mirror of
https://github.com/anchore/syft.git
synced 2026-02-12 10:36:45 +01:00
* migrate to runs-on runners Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * keep validations on x64 Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * correct ubuntu arm refs Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * bust cache Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * use artifacts api between jobs Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * download individual artifacts Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * troubleshoot artifact upload Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * disable magic cache Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * fix deps Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * attempt to replicate layout Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * change asset names and remove extras Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * better artifact filters Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * use action to get artifacts working Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * add sboms Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * simpler artifacts Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * add logging Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * remove logging Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * make artifacts executable Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * improve workflow dispatch calls Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * attempt to bring down ci times Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * update repo path Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * use local config instead of shared one Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * use runner labels instead of config Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * use valid alias Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * use compute instances for build Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * small comment on concurrency Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * fixes from review Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> * remove parallelism Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com> --------- Signed-off-by: Alex Goodman <wagoodman@users.noreply.github.com>
78 lines
2.4 KiB
YAML
78 lines
2.4 KiB
YAML
name: "Bootstrap"
|
|
|
|
description: "Bootstrap all tools and dependencies"
|
|
inputs:
|
|
go-version:
|
|
description: "Go version to install"
|
|
required: true
|
|
default: ">= 1.24"
|
|
go-dependencies:
|
|
description: "Download go dependencies"
|
|
required: true
|
|
default: "true"
|
|
cache-key-prefix:
|
|
description: "Prefix all cache keys with this value"
|
|
required: true
|
|
default: "53ac821810"
|
|
download-test-fixture-cache:
|
|
description: "Download test fixture cache from OCI and github actions"
|
|
required: true
|
|
default: "false"
|
|
tools:
|
|
description: "whether to install tools"
|
|
default: "true"
|
|
bootstrap-apt-packages:
|
|
description: "Space delimited list of tools to install via apt"
|
|
default: "libxml2-utils"
|
|
|
|
runs:
|
|
using: "composite"
|
|
steps:
|
|
# note: go mod and build is automatically cached on default with v4+
|
|
- uses: actions/setup-go@4dc6199c7b1a012772edbd06daecab0f50c9053c # v6.1.0
|
|
if: inputs.go-version != ''
|
|
with:
|
|
go-version: ${{ inputs.go-version }}
|
|
|
|
- name: Restore tool cache
|
|
if: inputs.tools == 'true'
|
|
id: tool-cache
|
|
uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
|
|
with:
|
|
path: ${{ github.workspace }}/.tool
|
|
key: ${{ inputs.cache-key-prefix }}-${{ runner.os }}-tool-${{ hashFiles('.binny.yaml') }}
|
|
|
|
- name: Install project tools
|
|
shell: bash
|
|
if: inputs.tools == 'true'
|
|
run: |
|
|
make tools
|
|
.tool/binny list
|
|
.tool/binny check
|
|
|
|
- name: Install go dependencies
|
|
if: inputs.go-dependencies == 'true'
|
|
shell: bash
|
|
run: make ci-bootstrap-go
|
|
|
|
- name: Install apt packages
|
|
if: inputs.bootstrap-apt-packages != ''
|
|
shell: bash
|
|
env:
|
|
APT_PACKAGES: ${{ inputs.bootstrap-apt-packages }}
|
|
run: |
|
|
IFS=' ' read -ra packages <<< "$APT_PACKAGES"
|
|
DEBIAN_FRONTEND=noninteractive sudo apt update && sudo -E apt install -y "${packages[@]}"
|
|
|
|
- name: Restore ORAS cache from github actions
|
|
if: inputs.download-test-fixture-cache == 'true'
|
|
uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
|
|
with:
|
|
path: ${{ github.workspace }}/.tmp/oras-cache
|
|
key: ${{ inputs.cache-key-prefix }}-oras-cache
|
|
|
|
- name: Download test fixture cache
|
|
if: inputs.download-test-fixture-cache == 'true'
|
|
shell: bash
|
|
run: make download-test-fixture-cache
|