name: Test Docker Compose Linux on: [push,pull_request] jobs: test: runs-on: ubuntu-latest steps: - name: Install jq run: sudo apt-get install -y jq - name: Install curl run: sudo apt-get install -y curl - name: Install Go uses: actions/setup-go@v2 with: go-version: 1.18.x - name: Cache Go modules uses: actions/cache@v2 with: path: ~/go/pkg/mod key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }} restore-keys: | ${{ runner.os }}-go- - name: Checkout code uses: actions/checkout@v2 - name: cp setup.env run: cp infrastructure_files/tests/setup.env infrastructure_files/ - name: run configure working-directory: infrastructure_files run: bash -x configure.sh env: CI_NETBIRD_AUTH_CLIENT_ID: ${{ secrets.CI_NETBIRD_AUTH_CLIENT_ID }} CI_NETBIRD_AUTH_AUDIENCE: testing.ci CI_NETBIRD_AUTH_OIDC_CONFIGURATION_ENDPOINT: https://example.eu.auth0.com/.well-known/openid-configuration CI_NETBIRD_USE_AUTH0: true - name: check values working-directory: infrastructure_files env: CI_NETBIRD_AUTH_CLIENT_ID: ${{ secrets.CI_NETBIRD_AUTH_CLIENT_ID }} CI_NETBIRD_AUTH_AUDIENCE: testing.ci CI_NETBIRD_AUTH_OIDC_CONFIGURATION_ENDPOINT: https://example.eu.auth0.com/.well-known/openid-configuration CI_NETBIRD_USE_AUTH0: true CI_NETBIRD_AUTH_SUPPORTED_SCOPES: "openid profile email offline_access api email_verified" CI_NETBIRD_AUTH_AUTHORITY: https://example.eu.auth0.com/ CI_NETBIRD_AUTH_JWT_CERTS: https://example.eu.auth0.com/.well-known/jwks.json CI_NETBIRD_AUTH_TOKEN_ENDPOINT: https://example.eu.auth0.com/oauth/token CI_NETBIRD_AUTH_DEVICE_AUTH_ENDPOINT: https://example.eu.auth0.com/oauth/device/code run: | grep AUTH_CLIENT_ID docker-compose.yml | grep $CI_NETBIRD_AUTH_CLIENT_ID grep AUTH_AUTHORITY docker-compose.yml | grep $CI_NETBIRD_AUTH_AUTHORITY grep AUTH_AUDIENCE docker-compose.yml | grep $CI_NETBIRD_AUTH_AUDIENCE grep AUTH_SUPPORTED_SCOPES docker-compose.yml | grep "$CI_NETBIRD_AUTH_SUPPORTED_SCOPES" grep USE_AUTH0 docker-compose.yml | grep $CI_NETBIRD_USE_AUTH0 grep NETBIRD_MGMT_API_ENDPOINT docker-compose.yml | grep "http://localhost:33073" - name: run docker compose up working-directory: infrastructure_files run: | docker-compose up -d sleep 5 - name: test running containers run: | count=$(docker compose ps --format json | jq '.[] | select(.Project | contains("infrastructure_files")) | .State' | grep -c running) test $count -eq 4 working-directory: infrastructure_files