Skip to content

CI Gateway

CI Gateway #30

name: CI Gateway
on:
pull_request:
branches: [ main ]
schedule:
- cron: '30 7 * * *'
workflow_dispatch:
jobs:
ci-docker-local:
name: CI Gateway
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/checkout@v3
-
name: install rover
run: |
echo ---------------------------------------------------------------
echo rover - installing ...
echo ---------------------------------------------------------------
curl -sSL https://rover.apollo.dev/nix/latest | sh -s -- --elv2-license accept
echo "$HOME/.rover/bin" >> ${GITHUB_PATH}
-
name: update docker-compose
run: |
which docker-compose && exit 0 || true
echo ---------------------------------------------------------------
echo docker-compose - installing ...
echo ---------------------------------------------------------------
BIN_DIR=$HOME/.docker-compose/bin
FILE=$BIN_DIR/docker-compose
mkdir -p $BIN_DIR
set -x
curl -L --fail https://github.com/docker/compose/releases/download/v2.11.1/docker-compose-`uname -s`-`uname -m` -o $FILE
chmod +x $FILE
echo "downloaded $($FILE --version)"
echo "$BIN_DIR" >> ${GITHUB_PATH}
set +x
echo ---------------------------------------------------------------
- name: check tools
run: |
make deps-check || true
- name: make supergraph
run: |
make config
make compose
cat supergraph/schema/docker.graphql
- name: docker-compose build
run: |
set -x
docker-compose \
-f docker-compose.yaml \
-f opentelemetry/docker-compose.otel.yaml \
-f misc/local/docker-compose.gateway.yaml \
build --parallel --progress plain
- name: docker-compose up -d
run: |
set -x
docker-compose \
-f docker-compose.yaml \
-f opentelemetry/docker-compose.otel.yaml \
-f misc/local/docker-compose.gateway.yaml \
up -d
sleep 8
docker-compose \
-f docker-compose.yaml \
-f opentelemetry/docker-compose.otel.yaml \
-f misc/local/docker-compose.gateway.yaml \
logs
- name: smoke test
run: .scripts/smoke.sh 4000
- name: docker-compose down
run: docker-compose down --remove-orphans