EE #375
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: "EE" | |
on: | |
pull_request: | |
push: | |
branches: | |
- master | |
schedule: | |
- cron: "0 3 * * *" # Every day at 3am UTC. | |
jobs: | |
tests: | |
name: "${{ matrix.group.name }}" | |
strategy: | |
fail-fast: false | |
matrix: | |
group: | |
- name: plugins | |
path: ./src/plugins | |
tailscale: true | |
env: | |
# Github only passes secrets to the main repo, so we need to skip some things if they are unavailable | |
SECRETS_AVAILABLE: ${{ secrets.EVENTSTORE_CLOUD_ID != null }} | |
EVENTSTORE_VERSION: "24.2.0-jammy" | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Connect to tailscale | |
if: ${{ matrix.group.tailscale && env.SECRETS_AVAILABLE == 'true' }} | |
run: | | |
curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/eoan.gpg | sudo apt-key add - | |
curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/eoan.list | sudo tee /etc/apt/sources.list.d/tailscale.list | |
sudo apt-get update | |
sudo apt-get install tailscale | |
sudo tailscale up --authkey ${{ secrets.TAILSCALE_AUTH }} --hostname "node-client-ci-${{ env.EVENTSTORE_VERSION }}-$(date +'%Y-%m-%d-%H-%M-%S')" --advertise-tags=tag:ci --accept-routes | |
- uses: actions/setup-node@v4 | |
with: | |
node-version-file: .github/files/.nvmrc | |
- name: NodeJS version | |
run: node -v | |
- name: Login to Cloudsmith | |
uses: docker/login-action@v3 | |
with: | |
registry: docker.eventstore.com | |
username: ${{ secrets.CLOUDSMITH_CICD_USER }} | |
password: ${{ secrets.CLOUDSMITH_CICD_TOKEN }} | |
- name: Install | |
run: yarn | |
- name: Build | |
run: yarn build | |
- name: Run Tests | |
run: yarn test ${{ matrix.group.path }} --ci --run-in-band --forceExit | |
env: | |
EVENTSTORE_IMAGE: eventstore-ee:${{ env.EVENTSTORE_VERSION }} | |
EVENTSTORE_CLOUD_ID: ${{ secrets.EVENTSTORE_CLOUD_ID }} | |
- name: Disconnect from tailscale | |
if: ${{ always() && matrix.group.tailscale && env.SECRETS_AVAILABLE == 'true' }} | |
run: sudo tailscale down |