What I did was a more customized version of that, I made a .gitlab-ci.yml file which easily lets you run any scripts of your own to build, with the same end result. Using gulp I had it run in development mode by default with watchers and verbose outputs, yet in the ci file I called a production build that polished everything up. For the front end side, I used pug, sass and babel with a few other js things to make a templating system, which really helped me understand site structures.