You've already forked oauth2-proxy
mirror of
https://github.com/oauth2-proxy/oauth2-proxy.git
synced 2025-09-16 09:16:33 +02:00
feat(e2e): add make build target for local docker image
Signed-off-by: Jan Larwig <jan@larwig.com>
This commit is contained in:
108
.github/workflows/ci.yml
vendored
108
.github/workflows/ci.yml
vendored
@@ -3,79 +3,79 @@ name: Continuous Integration
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- '**'
|
||||
- master
|
||||
pull_request:
|
||||
branches:
|
||||
- '**'
|
||||
- "**"
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
COVER: true
|
||||
steps:
|
||||
- name: Check out code
|
||||
uses: actions/checkout@v5
|
||||
- name: Check out code
|
||||
uses: actions/checkout@v5
|
||||
|
||||
- name: Set up Go
|
||||
uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version-file: go.mod
|
||||
id: go
|
||||
- name: Set up Go
|
||||
uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version-file: go.mod
|
||||
id: go
|
||||
|
||||
- name: Get dependencies
|
||||
env:
|
||||
# renovate: datasource=github-tags depName=golangci/golangci-lint
|
||||
GOLANGCI_LINT_VERSION: v2.4.0
|
||||
run: |
|
||||
curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin ${GOLANGCI_LINT_VERSION}
|
||||
curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
|
||||
chmod +x ./cc-test-reporter
|
||||
- name: Get dependencies
|
||||
env:
|
||||
# renovate: datasource=github-tags depName=golangci/golangci-lint
|
||||
GOLANGCI_LINT_VERSION: v2.4.0
|
||||
run: |
|
||||
curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin ${GOLANGCI_LINT_VERSION}
|
||||
curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
|
||||
chmod +x ./cc-test-reporter
|
||||
|
||||
- name: Verify Code Generation
|
||||
run: |
|
||||
make verify-generate
|
||||
- name: Verify Code Generation
|
||||
run: |
|
||||
make verify-generate
|
||||
|
||||
- name: Lint
|
||||
run: |
|
||||
make lint
|
||||
- name: Lint
|
||||
run: |
|
||||
make lint
|
||||
|
||||
- name: Build
|
||||
if: (!startsWith(github.head_ref, 'release'))
|
||||
run: |
|
||||
make build
|
||||
- name: Build
|
||||
if: (!startsWith(github.head_ref, 'release'))
|
||||
run: |
|
||||
make build
|
||||
|
||||
# For release testing
|
||||
- name: Build All
|
||||
if: github.base_ref == 'master' && startsWith(github.head_ref, 'release')
|
||||
run: |
|
||||
make release
|
||||
# For release testing
|
||||
- name: Build All
|
||||
if: github.base_ref == 'master' && startsWith(github.head_ref, 'release')
|
||||
run: |
|
||||
make release
|
||||
|
||||
- name: Test
|
||||
env:
|
||||
CC_TEST_REPORTER_ID: ${{ secrets.CC_TEST_REPORTER_ID }}
|
||||
run: |
|
||||
./.github/workflows/test.sh
|
||||
- name: Test
|
||||
env:
|
||||
CC_TEST_REPORTER_ID: ${{ secrets.CC_TEST_REPORTER_ID }}
|
||||
run: |
|
||||
./.github/workflows/test.sh
|
||||
|
||||
docker:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Check out code
|
||||
uses: actions/checkout@v5
|
||||
- name: Check out code
|
||||
uses: actions/checkout@v5
|
||||
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v3
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
id: buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v3
|
||||
|
||||
- name: Docker Build
|
||||
if: (!startsWith(github.head_ref, 'release'))
|
||||
run: |
|
||||
make build-docker
|
||||
- name: Set up Docker Buildx
|
||||
id: buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
# For release testing
|
||||
- name: Docker Build All
|
||||
if: github.base_ref == 'master' && startsWith(github.head_ref, 'release')
|
||||
run: |
|
||||
make build-docker-all
|
||||
- name: Docker Build
|
||||
if: (!startsWith(github.head_ref, 'release'))
|
||||
run: |
|
||||
make build-docker
|
||||
|
||||
# For release testing
|
||||
- name: Docker Build All
|
||||
if: github.base_ref == 'master' && startsWith(github.head_ref, 'release')
|
||||
run: |
|
||||
make build-docker-all
|
||||
|
1
.gitignore
vendored
1
.gitignore
vendored
@@ -7,6 +7,7 @@ release
|
||||
.env
|
||||
.bundle
|
||||
c.out
|
||||
e2e
|
||||
|
||||
# Go.gitignore
|
||||
# Compiled Object files, Static and Dynamic libs (Shared Objects)
|
||||
|
4
Makefile
4
Makefile
@@ -75,6 +75,10 @@ DOCKER_BUILDX_PUSH_X_PLATFORM_ALPINE := $(DOCKER_BUILDX_X_PLATFORM_ALPINE) --pus
|
||||
.PHONY: build-docker
|
||||
build-docker: build-distroless build-alpine ## Build multi architecture docker images in both flavours (distroless / alpine)
|
||||
|
||||
.PHONY: build-docker-local
|
||||
build-docker-local: ## Build distroless docker image and locally load into docker images
|
||||
$(DOCKER_BUILDX) --load -t $(REGISTRY)/$(REPOSITORY):latest -t $(REGISTRY)/$(REPOSITORY):${VERSION} .
|
||||
|
||||
.PHONY: build-distroless
|
||||
build-distroless: ## Build multi architecture distroless based docker image
|
||||
$(DOCKER_BUILDX_X_PLATFORM) -t $(REGISTRY)/$(REPOSITORY):latest -t $(REGISTRY)/$(REPOSITORY):${VERSION} .
|
||||
|
Reference in New Issue
Block a user