name: push on: push: branches-ignore: - release pull_request: branches-ignore: - release jobs: lint: runs-on: ubuntu-latest name: Checks syntax of our code steps: - uses: actions/checkout@v2 with: # Full git history is needed to get a proper list of changed files within `super-linter` fetch-depth: 0 - uses: actions/setup-python@v2 - 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 build: continue-on-error: ${{ matrix.docker_from == 'alpine:edge' }} 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 - alpine:edge platform: - linux/amd64 - linux/arm64 fail-fast: false runs-on: ubuntu-latest name: Builds new NetBox Docker Images steps: - name: Checkout uses: actions/checkout@v2 - name: Get Version of NetBox Docker run: | echo "::set-output name=version::$(cat VERSION)" shell: bash - name: Set up QEMU uses: docker/setup-qemu-action@v1 - id: buildx-setup name: Set up Docker Buildx uses: docker/setup-buildx-action@v1 with: install: true - 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 BUILDX_BUILDER_NAME: ${{ steps.buildx-setup.outputs.name }} BUILDX_PLATFORMS: ${{ matrix.platform }} - name: Test the image run: IMAGE="${FINAL_DOCKER_TAG}" ./test.sh if: steps.docker-build.outputs.skipped != 'true'