Skip to content

Add CI/CD #30

@ricardobalk

Description

@ricardobalk

Now we have Dockerfiles (#25), it would be cool if the project has some kind of CI/CD, like Travis, Jenkins, GitHub Actions, etc.

Docker provides an environment and a default setup for the application, CI/CD can take advantage of that.

Main goals for CI/CD

  • Runs common linters and formatting tools on source tools (e.g. go fmt, go vet, npx prettier)
    — and commit automatically fixed lines to the PR
  • Checks the resulting PR for compatibility (i.e. failed Docker builds should not pass)

Bonus points for

  • If the CI/CD checks availability of the API endpoint (i.e. does the API really work?)
  • If the CI/CD checks availability of the map interface by making screenshots with something like Puppeteer
    — but this stuff probably involves complex stuff like xvfb, as most CI/CD systems are headless and don't have a "real display".

Metadata

Metadata

Assignees

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions