Skip to content

fix(nginx): blocking strategy correctly supports groups #315

fix(nginx): blocking strategy correctly supports groups

fix(nginx): blocking strategy correctly supports groups #315

Workflow file for this run

name: Build Sablier plugins
on:
push:
branches:
- main
- beta
pull_request:
jobs:
build:
name: Build docker image once and share it to E2E jobs
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Build and push
uses: docker/build-push-action@v5
with:
context: .
file: ./Dockerfile
tags: acouvreur/sablier:local
outputs: type=docker,dest=/tmp/sablier.tar
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: sablier-image-tar
path: /tmp/sablier.tar
traefik:
name: Build Sablier for Traefik middleware
runs-on: ubuntu-latest
steps:
- name: Set up Go 1.21
uses: actions/setup-go@v5
with:
go-version: 1.21
- name: Checkout code
uses: actions/checkout@v4
- name: Build
run: cd plugins/traefik && go build -v .
- name: Test
run: cd plugins/traefik && go test -v ./...
traefik_e2e:
name: Run Sablier E2E tests for Traefik middleware
runs-on: ubuntu-latest
needs: build
strategy:
fail-fast: false
matrix:
provider: [docker, docker_swarm, kubernetes]
steps:
- name: Set up Go 1.21
uses: actions/setup-go@v5
with:
go-version: 1.21
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Download artifact
uses: actions/download-artifact@v4
with:
name: sablier-image-tar
path: /tmp
- name: Load Docker image
run: docker load --input /tmp/sablier.tar
- name: Test ${{ matrix.provider }}
run: cd plugins/traefik/e2e/${{ matrix.provider }} && bash ./run.sh
nginx_e2e:
name: Run Sablier E2E tests for Nginx NJS module with Sablier
runs-on: ubuntu-latest
needs: build
strategy:
fail-fast: false
matrix:
provider: [docker, docker_swarm] # , kubernetes]
steps:
- name: Set up Go 1.21
uses: actions/setup-go@v5
with:
go-version: 1.21
- name: Checkout code
uses: actions/checkout@v4
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Download artifact
uses: actions/download-artifact@v4
with:
name: sablier-image-tar
path: /tmp
- name: Load Docker image
run: docker load --input /tmp/sablier.tar
- name: Test ${{ matrix.provider }}
run: cd plugins/nginx/e2e/${{ matrix.provider }} && bash ./run.sh
build-caddy:
name: Build Caddy docker image once and share it to Caddy E2E jobs
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Build and push
uses: docker/build-push-action@v5
with:
context: plugins/caddy
file: plugins/caddy/Dockerfile
tags: caddy:local
outputs: type=docker,dest=/tmp/caddy.tar
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: caddy-image-tar
path: /tmp/caddy.tar
caddy_e2e:
name: Run Sablier E2E tests for Caddy middleware
runs-on: ubuntu-latest
needs:
- build
- build-caddy
strategy:
fail-fast: false
matrix:
provider: [docker, docker_swarm] # , kubernetes]
steps:
- name: Set up Go 1.21
uses: actions/setup-go@v5
with:
go-version: 1.21
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Download artifact
uses: actions/download-artifact@v4
with:
name: sablier-image-tar
path: /tmp
- name: Load Docker image
run: docker load --input /tmp/sablier.tar
- name: Download Caddy artifact
uses: actions/download-artifact@v4
with:
name: caddy-image-tar
path: /tmp
- name: Load Caddy Docker image
run: docker load --input /tmp/caddy.tar
- name: Test ${{ matrix.provider }}
run: cd plugins/caddy/e2e/${{ matrix.provider }} && bash ./run.sh