Continuous Integration (CI)
Frontastic offers Continuous Integration (CI) as standard which can be extended to some degree. As our CI is only basic, we really recommend using your own CI service if you want to add more sophisticated build steps. See Extending the build system or the End2End Testing articles for more information on how to do this.
The standard process involves the below steps:
When you push a number of changes to the
master branch of your project in GitHub, this will trigger a build in the format
Please note that only 1 build can be run at a time. If 2 different developers commit around the same time, 1 build will run first then the 2nd will begin once the 1st build has finished. The 2nd build will run on the most recent state of the master branch, not for every push individually.
You can follow the progress of your build within the Frontastic Editor (click Developer, then Continuous Integration).
The testing of the build will then take place. We automatically run
yarn run test and
phpunit for the PHP code (you can find this in
phpunit.xml and the standard is
Once the build has finished successfully, the results will be available in the Frontastic Editor and the status in GitHub will also be updated. You'll also get the build result either your Slack channel or MS Teams channel.
If all of this is successful, your new build will then be deployed to your staging environment and new Google Cloud instances will be brought up there.
From start to finish, this process can take anywhere between a few minutes to 20 minutes. But it really depends on how much code you have in your repository and the additional tests you've added.
You can use your commit message to trigger some actions. Please note that the CI server only checks that last commit message, so if you push multiple commits at once, make sure the string is in the last commit message.
Embed the below string in your commit message:
#build– Triggers an
ant packagein a branch other than the
masterbranch. This can be used to then deploy a branch instead of the master branch.
#clear– Clears all
node_modulesfolders. Since Yarn regularly fails to update all dependencies we offer you this to make it possible to trigger a fresh dependency installation on the CI server manually.
You'll then need to test your new build in the staging environment yourself and once you're ready, you can use the Frontastic Editor to deploy to production. The next article will show you how to do this.
‹ Back to article list