Skip to content

gansb/ciCdPlayground

 
 

Repository files navigation

The playground

This is intended to be a minimal project for a CI/CD workshop. It consists of a simple JavaScript project, one trivial test, and configuration for some CI/CD tools.

Setup

Yarn is recommended, but corresponding npm commands should work, too.

To install dependencies run yarn

Serve at localhost:8081 with yarn dev

Run tests with yarn test and yarn test:e2e

Provisioning

The infrastructure directory contains a CDK app that can provision a S3 bucket from which the playground can be served. Typically a deployment job would first provision a bucket via CDK and afterwards deploy to that bucket via AWS CLI. Requirements:

  • IAM role with appropriate permission, see policy-for-deployment-role.json
  • credentials for this role provided as secrets in the CI/CD pipeline

The tools

Github Actions

Running out of the box on, well, Github, see .github.

TeamCity WIP

Requires a TeamCity server, e.g. https://hub.docker.com/r/jetbrains/teamcity-server. Due to issues with TeamCity's docker wrapper in some dockerised agents, an agent with locally installed yarn is required. See .teamcity.

Jenkins WIP

There is a simple Jenkinsfile present. Currently not working:

  • e2e tests due to cypress dependencies
  • deployment due to not configured AWS secrets

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 74.0%
  • Kotlin 10.1%
  • Svelte 7.9%
  • CSS 5.5%
  • HTML 2.5%