Continuous Integration Continuous Delivery (CI/CD)


The project will include a CI file if a CI service ( Github , Gitlab or TravisCI ) is selected.

This is configured on the advantch dashboard before building the project.

GitHub actions for automated tests and deployments

The project includes setup files for two GitHub actions. One for running tests ( ci.yml ) and another for deployment (deploy.yml) if you have selected to include render.com or fly.io for deployment.

Fly.io [v0.14]

To set up automated deployments to fly.io add the API token to your GitHub environment.

``` name: Deploy on: push: branches: [ "main" ] paths-ignore: [ "docs/**" ]

env: FLY_API_TOKEN: ${{ secrets.FLY_API_TOKEN }} jobs: deploy: name: Deploy app runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: superfly/flyctl-actions/setup-flyctl@master - run: flyctl deploy --remote-only ```

Render.com [v0.14]

You can use this action to deploy to render.com

``` name: Deploy

on: push: branches: [ "main" ] paths-ignore: [ "docs/**" ]

jobs: deploy: name: Wait for Deploy runs-on: ubuntu-18.04 steps: - name: Wait for Render Deployment uses: bounceapp/render-action@0.2.0 with: email: ${{ secrets.RENDER_EMAIL }} password: ${{ secrets.RENDER_PASSWORD }} token: ${{ secrets.GITHUB_TOKEN }} service-id: srv-xxxxxxxxxxxxxxxxxxxx ```

Creating encrypted secrets for an environment in github

To create secrets for an environment in a personal account repository, you must be the repository owner. To create secrets for an environment in an organization repository, you must have admin access.

  1. On GitHub.com, navigate to the main page of the repository.

  2. Under your repository name, click Settings .