Workflows in the Repositories¶
The currently used Continuous Integration Pipeline is GitHub Actions, which provides 2.000 minutes free per month. It can run on either Ubuntu, MacOS, or Windows, allowing us to test multiple platforms from our CI-Platform without cost.
web-api¶
This job is built in two tasks: dotnettest.yml and dockerimage.yml
Similar to the api_client, the web-api suite runs by building a dotnet system in
Release mode, to ensure deployability, and then runs dotnet test
, to run the embedded
GirafRest.Test project and the unit tests contained.
GitHub Packages¶
In addition to running unit tests, when pushed to any branch GitHub Actions starts another job, starts a build of the embedded Dockerfile, and tags this accordingly as either:
- master: aau-giraf/web-api/web-api:latest
- develop: aau-giraf/web-api/web-api:develop
- issue/123: aau-giraf/web-api/web-api:issue-123
When deploying into the production swarm, these images are pulled into DEV and PROD environments accordingly.
wiki¶
This job is built in one task: page-build.yml
As the wiki is currently built using MKDocs, this repository is set up with a GitHub Actions script to build the source files, markdown, into a static HTML page, and push this into the GitHub Pages-environment, allowing it to be reachable at http://giraf-aau.github.io/wiki.
This is run using an existing GitHub Action, mhausenblas/mkdocs-deploy-gh-pages, thus being the simplest of the builds.