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.


Last update: September 18, 2024