Build ARM64 images
This commit is contained in:
parent
13d66f2ae7
commit
cee1b5b079
5 changed files with 333 additions and 310 deletions
100
.github/workflows/push.yml
vendored
100
.github/workflows/push.yml
vendored
|
@ -1,3 +1,4 @@
|
|||
---
|
||||
name: push
|
||||
|
||||
on:
|
||||
|
@ -13,55 +14,66 @@ jobs:
|
|||
runs-on: ubuntu-latest
|
||||
name: Checks syntax of our code
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
# Full git history is needed to get a proper list of changed files within `super-linter`
|
||||
fetch-depth: 0
|
||||
- uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: '3.9'
|
||||
- name: Lint Code Base
|
||||
uses: github/super-linter@v4
|
||||
env:
|
||||
DEFAULT_BRANCH: develop
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
SUPPRESS_POSSUM: true
|
||||
LINTER_RULES_PATH: /
|
||||
VALIDATE_ALL_CODEBASE: false
|
||||
VALIDATE_DOCKERFILE: false
|
||||
FILTER_REGEX_EXCLUDE: (.*/)?(LICENSE|configuration/.*)
|
||||
|
||||
EDITORCONFIG_FILE_NAME: .ecrc
|
||||
DOCKERFILE_HADOLINT_FILE_NAME: .hadolint.yaml
|
||||
MARKDOWN_CONFIG_FILE: .markdown-lint.yml
|
||||
PYTHON_BLACK_CONFIG_FILE: pyproject.toml
|
||||
PYTHON_FLAKE8_CONFIG_FILE: .flake8
|
||||
PYTHON_ISORT_CONFIG_FILE: pyproject.toml
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
# Full git history is needed to get a proper
|
||||
# list of changed files within `super-linter`
|
||||
fetch-depth: 0
|
||||
- uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: '3.9'
|
||||
- name: Lint Code Base
|
||||
uses: github/super-linter@v4
|
||||
env:
|
||||
DEFAULT_BRANCH: develop
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
SUPPRESS_POSSUM: true
|
||||
LINTER_RULES_PATH: /
|
||||
VALIDATE_ALL_CODEBASE: false
|
||||
VALIDATE_DOCKERFILE: false
|
||||
FILTER_REGEX_EXCLUDE: (.*/)?(LICENSE|configuration/.*)
|
||||
EDITORCONFIG_FILE_NAME: .ecrc
|
||||
DOCKERFILE_HADOLINT_FILE_NAME: .hadolint.yaml
|
||||
MARKDOWN_CONFIG_FILE: .markdown-lint.yml
|
||||
PYTHON_BLACK_CONFIG_FILE: pyproject.toml
|
||||
PYTHON_FLAKE8_CONFIG_FILE: .flake8
|
||||
PYTHON_ISORT_CONFIG_FILE: pyproject.toml
|
||||
YAML_CONFIG_FILE: .yamllint.yaml
|
||||
build:
|
||||
continue-on-error: ${{ matrix.docker_from == 'alpine:edge' }}
|
||||
continue-on-error: ${{ matrix.build_cmd != './build-latest.sh' }}
|
||||
strategy:
|
||||
matrix:
|
||||
build_cmd:
|
||||
- ./build-latest.sh
|
||||
- PRERELEASE=true ./build-latest.sh
|
||||
- ./build.sh feature
|
||||
- ./build.sh develop
|
||||
docker_from:
|
||||
- '' # use the default of the build script
|
||||
- ./build-latest.sh
|
||||
- PRERELEASE=true ./build-latest.sh
|
||||
- ./build.sh feature
|
||||
- ./build.sh develop
|
||||
platform:
|
||||
- linux/amd64
|
||||
- linux/arm64
|
||||
fail-fast: false
|
||||
env:
|
||||
GH_ACTION: enable
|
||||
IMAGE_NAMES: docker.io/netboxcommunity/netbox
|
||||
runs-on: ubuntu-latest
|
||||
name: Builds new NetBox Docker Images
|
||||
steps:
|
||||
- id: git-checkout
|
||||
name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
- id: docker-build
|
||||
name: Build the image from '${{ matrix.docker_from }}' with '${{ matrix.build_cmd }}'
|
||||
run: ${{ matrix.build_cmd }}
|
||||
env:
|
||||
DOCKER_FROM: ${{ matrix.docker_from }}
|
||||
GH_ACTION: enable
|
||||
- id: docker-test
|
||||
name: Test the image
|
||||
run: IMAGE="${FINAL_DOCKER_TAG}" ./test.sh
|
||||
if: steps.docker-build.outputs.skipped != 'true'
|
||||
- id: git-checkout
|
||||
name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
- id: qemu-setup
|
||||
name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v1
|
||||
- id: buildx-setup
|
||||
name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v1
|
||||
- id: docker-build
|
||||
name: Build the image for '${{ matrix.platform }}' with '${{ matrix.build_cmd }}'
|
||||
run: ${{ matrix.build_cmd }}
|
||||
env:
|
||||
BUILDX_PLATFORM: ${{ matrix.platform }}
|
||||
BUILDX_BUILDER_NAME: ${{ steps.buildx-setup.outputs.name }}
|
||||
- id: docker-test
|
||||
name: Test the image
|
||||
run: IMAGE="${FINAL_DOCKER_TAG}" ./test.sh
|
||||
if: steps.docker-build.outputs.skipped != 'true'
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue