Compare commits
33 Commits
Author | SHA1 | Date |
---|---|---|
|
8b278f9f3a | |
|
8ef49d284c | |
|
0615cb1606 | |
|
1972af59b1 | |
|
4003677614 | |
|
bc73391c4a | |
|
6eec7f8ccd | |
|
49ee5108c4 | |
|
6ffcbaeb03 | |
|
7805195a51 | |
|
8410f8c7df | |
|
3cd63539b2 | |
|
e4530ec6cf | |
|
3f4503c8d1 | |
|
4a02b8c188 | |
|
d301496253 | |
|
53b3b948c3 | |
|
f83f9f17c6 | |
|
2e806e5535 | |
|
a19090c39e | |
|
30121c7343 | |
|
74373f3072 | |
|
856a4a84c9 | |
|
8b3f28cf24 | |
|
44ffcb976b | |
|
9471b1b0f1 | |
|
49b29c5e96 | |
|
2d937cc1f6 | |
|
52f687a29c | |
|
70a20a8bc6 | |
|
bf78840eea | |
|
d004da0a2c | |
|
1d7cc11857 |
|
@ -4,6 +4,8 @@ updates:
|
|||
directory: /
|
||||
schedule:
|
||||
interval: daily
|
||||
ignore:
|
||||
- dependency-name: github.com/onsi/gomega
|
||||
labels:
|
||||
- semver:patch
|
||||
- type:dependency-upgrade
|
||||
|
|
|
@ -1 +1 @@
|
|||
1.30.0
|
||||
1.42.0
|
||||
|
|
|
@ -11,14 +11,14 @@ jobs:
|
|||
steps:
|
||||
- name: Docker login docker.io
|
||||
if: ${{ (github.event_name != 'pull_request' || ! github.event.pull_request.head.repo.fork) && (github.actor != 'dependabot[bot]') }}
|
||||
uses: docker/login-action@v2
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
password: ${{ secrets.DOCKER_PASS }}
|
||||
registry: docker.io
|
||||
username: ${{ secrets.DOCKER_USER }}
|
||||
- uses: actions/setup-go@v3
|
||||
- uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version: "1.18"
|
||||
go-version: "1.24"
|
||||
- name: Install create-package
|
||||
run: |
|
||||
#!/usr/bin/env bash
|
||||
|
@ -26,44 +26,13 @@ jobs:
|
|||
set -euo pipefail
|
||||
|
||||
go install -ldflags="-s -w" github.com/paketo-buildpacks/libpak/cmd/create-package@latest
|
||||
- name: Install crane
|
||||
run: |
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
echo "Installing crane ${CRANE_VERSION}"
|
||||
|
||||
mkdir -p "${HOME}"/bin
|
||||
echo "${HOME}/bin" >> "${GITHUB_PATH}"
|
||||
|
||||
curl \
|
||||
--show-error \
|
||||
--silent \
|
||||
--location \
|
||||
"https://github.com/google/go-containerregistry/releases/download/v${CRANE_VERSION}/go-containerregistry_Linux_x86_64.tar.gz" \
|
||||
| tar -C "${HOME}/bin" -xz crane
|
||||
env:
|
||||
CRANE_VERSION: 0.8.0
|
||||
- name: Install pack
|
||||
run: |
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
echo "Installing pack ${PACK_VERSION}"
|
||||
|
||||
mkdir -p "${HOME}"/bin
|
||||
echo "${HOME}/bin" >> "${GITHUB_PATH}"
|
||||
|
||||
curl \
|
||||
--location \
|
||||
--show-error \
|
||||
--silent \
|
||||
"https://github.com/buildpacks/pack/releases/download/v${PACK_VERSION}/pack-v${PACK_VERSION}-linux.tgz" \
|
||||
| tar -C "${HOME}"/bin -xz pack
|
||||
env:
|
||||
PACK_VERSION: 0.27.0
|
||||
- uses: buildpacks/github-actions/setup-tools@v5.8.9
|
||||
with:
|
||||
crane-version: 0.20.3
|
||||
yj-version: 5.1.0
|
||||
- uses: buildpacks/github-actions/setup-pack@v5.8.9
|
||||
with:
|
||||
pack-version: 0.36.4
|
||||
- name: Enable pack Experimental
|
||||
if: ${{ false }}
|
||||
run: |
|
||||
|
@ -75,9 +44,9 @@ jobs:
|
|||
|
||||
mkdir -p "${HOME}"/.pack
|
||||
echo "experimental = true" >> "${HOME}"/.pack/config.toml
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- if: ${{ false }}
|
||||
uses: actions/cache@v3
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
key: ${{ runner.os }}-go-${{ hashFiles('**/buildpack.toml', '**/package.toml') }}
|
||||
path: |-
|
||||
|
@ -91,8 +60,8 @@ jobs:
|
|||
|
||||
set -euo pipefail
|
||||
|
||||
if [ -z "${GITHUB_REF+set}" ]; then
|
||||
echo "GITHUB_REF set to [${GITHUB_REF-<unset>}], but should never be empty or unset"
|
||||
if [[ ${GITHUB_REF:-} != "refs/"* ]]; then
|
||||
echo "GITHUB_REF set to [${GITHUB_REF:-}], but that is unexpected. It should start with 'refs/*'"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
|
@ -121,23 +90,32 @@ jobs:
|
|||
|
||||
set -euo pipefail
|
||||
|
||||
# With Go 1.20, we need to set this so that we produce statically compiled binaries
|
||||
#
|
||||
# Starting with Go 1.20, Go will produce binaries that are dynamically linked against libc
|
||||
# which can cause compatibility issues. The compiler links against libc on the build system
|
||||
# but that may be newer than on the stacks we support.
|
||||
export CGO_ENABLED=0
|
||||
|
||||
if [[ "${INCLUDE_DEPENDENCIES}" == "true" ]]; then
|
||||
create-package \
|
||||
--source ${SOURCE_PATH:-.} \
|
||||
--source "${SOURCE_PATH:-.}" \
|
||||
--cache-location "${HOME}"/carton-cache \
|
||||
--destination "${HOME}"/buildpack \
|
||||
--include-dependencies \
|
||||
--version "${VERSION}"
|
||||
else
|
||||
create-package \
|
||||
--source ${SOURCE_PATH:-.} \
|
||||
--source "${SOURCE_PATH:-.}" \
|
||||
--destination "${HOME}"/buildpack \
|
||||
--version "${VERSION}"
|
||||
fi
|
||||
|
||||
PACKAGE_FILE=${SOURCE_PATH:-.}/package.toml
|
||||
[[ -e ${PACKAGE_FILE} ]] && cp ${PACKAGE_FILE} "${HOME}"/package.toml
|
||||
printf '[buildpack]\nuri = "%s"\n\n[platform]\nos = "%s"\n' "${HOME}"/buildpack "${OS}" >> "${HOME}"/package.toml
|
||||
PACKAGE_FILE="${SOURCE_PATH:-.}/package.toml"
|
||||
if [ -f "${PACKAGE_FILE}" ]; then
|
||||
cp "${PACKAGE_FILE}" "${HOME}/buildpack/package.toml"
|
||||
printf '[buildpack]\nuri = "%s"\n\n[platform]\nos = "%s"\n' "${HOME}/buildpack" "${OS}" >> "${HOME}/buildpack/package.toml"
|
||||
fi
|
||||
env:
|
||||
INCLUDE_DEPENDENCIES: "false"
|
||||
OS: linux
|
||||
|
@ -150,15 +128,23 @@ jobs:
|
|||
|
||||
set -euo pipefail
|
||||
|
||||
COMPILED_BUILDPACK="${HOME}/buildpack"
|
||||
|
||||
# create-package puts the buildpack here, we need to run from that directory
|
||||
# for component buildpacks so that pack doesn't need a package.toml
|
||||
cd "${COMPILED_BUILDPACK}"
|
||||
CONFIG=""
|
||||
if [ -f "${COMPILED_BUILDPACK}/package.toml" ]; then
|
||||
CONFIG="--config ${COMPILED_BUILDPACK}/package.toml"
|
||||
fi
|
||||
|
||||
PACKAGE_LIST=($PACKAGES)
|
||||
# Extract first repo (Docker Hub) as the main to package & register
|
||||
PACKAGE=${PACKAGE_LIST[0]}
|
||||
|
||||
if [[ "${PUBLISH:-x}" == "true" ]]; then
|
||||
pack buildpack package \
|
||||
"${PACKAGE}:${VERSION}" \
|
||||
--config "${HOME}"/package.toml \
|
||||
pack -v buildpack package \
|
||||
"${PACKAGE}:${VERSION}" ${CONFIG} \
|
||||
--publish
|
||||
|
||||
if [[ -n ${VERSION_MINOR:-} && -n ${VERSION_MAJOR:-} ]]; then
|
||||
|
@ -182,10 +168,9 @@ jobs:
|
|||
done
|
||||
|
||||
else
|
||||
pack buildpack package \
|
||||
"${PACKAGE}:${VERSION}" \
|
||||
--config "${HOME}"/package.toml \
|
||||
--format "${FORMAT}"
|
||||
pack -v buildpack package \
|
||||
"${PACKAGE}:${VERSION}" ${CONFIG} \
|
||||
--format "${FORMAT}" $([ -n "$TTL_SH_PUBLISH" ] && [ "$TTL_SH_PUBLISH" = "true" ] && echo "--publish")
|
||||
fi
|
||||
env:
|
||||
PACKAGES: docker.io/buildpacksio/profile
|
||||
|
@ -216,7 +201,7 @@ jobs:
|
|||
DIGEST: ${{ steps.package.outputs.digest }}
|
||||
GITHUB_TOKEN: ${{ secrets.IMPLEMENTATION_GITHUB_TOKEN }}
|
||||
- if: ${{ true }}
|
||||
uses: docker://ghcr.io/buildpacks/actions/registry/request-add-entry:4.0.1
|
||||
uses: docker://ghcr.io/buildpacks/actions/registry/request-add-entry:5.8.9
|
||||
with:
|
||||
address: docker.io/buildpacksio/profile@${{ steps.package.outputs.digest }}
|
||||
id: buildpacksio/profile
|
||||
|
|
|
@ -12,7 +12,7 @@ jobs:
|
|||
runs-on:
|
||||
- ubuntu-latest
|
||||
steps:
|
||||
- uses: mheap/github-action-required-labels@v3
|
||||
- uses: mheap/github-action-required-labels@v5
|
||||
with:
|
||||
count: 1
|
||||
labels: semver:major, semver:minor, semver:patch
|
||||
|
@ -22,7 +22,7 @@ jobs:
|
|||
runs-on:
|
||||
- ubuntu-latest
|
||||
steps:
|
||||
- uses: mheap/github-action-required-labels@v3
|
||||
- uses: mheap/github-action-required-labels@v5
|
||||
with:
|
||||
count: 1
|
||||
labels: type:bug, type:dependency-upgrade, type:documentation, type:enhancement, type:question, type:task
|
||||
|
|
|
@ -11,7 +11,7 @@ jobs:
|
|||
runs-on:
|
||||
- ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: micnncim/action-label-syncer@v1
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.IMPLEMENTATION_GITHUB_TOKEN }}
|
||||
|
|
|
@ -1,5 +1,10 @@
|
|||
name: Tests
|
||||
"on":
|
||||
merge_group:
|
||||
types:
|
||||
- checks_requested
|
||||
branches:
|
||||
- main
|
||||
pull_request: {}
|
||||
push:
|
||||
branches:
|
||||
|
@ -12,14 +17,14 @@ jobs:
|
|||
steps:
|
||||
- name: Docker login docker.io
|
||||
if: ${{ (github.event_name != 'pull_request' || ! github.event.pull_request.head.repo.fork) && (github.actor != 'dependabot[bot]') }}
|
||||
uses: docker/login-action@v2
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
password: ${{ secrets.DOCKER_PASS }}
|
||||
registry: docker.io
|
||||
username: ${{ secrets.DOCKER_USER }}
|
||||
- uses: actions/setup-go@v3
|
||||
- uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version: "1.18"
|
||||
go-version: "1.24"
|
||||
- name: Install create-package
|
||||
run: |
|
||||
#!/usr/bin/env bash
|
||||
|
@ -27,25 +32,9 @@ jobs:
|
|||
set -euo pipefail
|
||||
|
||||
go install -ldflags="-s -w" github.com/paketo-buildpacks/libpak/cmd/create-package@latest
|
||||
- name: Install pack
|
||||
run: |
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
echo "Installing pack ${PACK_VERSION}"
|
||||
|
||||
mkdir -p "${HOME}"/bin
|
||||
echo "${HOME}/bin" >> "${GITHUB_PATH}"
|
||||
|
||||
curl \
|
||||
--location \
|
||||
--show-error \
|
||||
--silent \
|
||||
"https://github.com/buildpacks/pack/releases/download/v${PACK_VERSION}/pack-v${PACK_VERSION}-linux.tgz" \
|
||||
| tar -C "${HOME}"/bin -xz pack
|
||||
env:
|
||||
PACK_VERSION: 0.27.0
|
||||
- uses: buildpacks/github-actions/setup-pack@v5.8.9
|
||||
with:
|
||||
pack-version: 0.36.4
|
||||
- name: Enable pack Experimental
|
||||
if: ${{ false }}
|
||||
run: |
|
||||
|
@ -57,8 +46,8 @@ jobs:
|
|||
|
||||
mkdir -p "${HOME}"/.pack
|
||||
echo "experimental = true" >> "${HOME}"/.pack/config.toml
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/cache@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/cache@v4
|
||||
with:
|
||||
key: ${{ runner.os }}-go-${{ hashFiles('**/buildpack.toml', '**/package.toml') }}
|
||||
path: |-
|
||||
|
@ -72,8 +61,8 @@ jobs:
|
|||
|
||||
set -euo pipefail
|
||||
|
||||
if [ -z "${GITHUB_REF+set}" ]; then
|
||||
echo "GITHUB_REF set to [${GITHUB_REF-<unset>}], but should never be empty or unset"
|
||||
if [[ ${GITHUB_REF:-} != "refs/"* ]]; then
|
||||
echo "GITHUB_REF set to [${GITHUB_REF:-}], but that is unexpected. It should start with 'refs/*'"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
|
@ -102,23 +91,32 @@ jobs:
|
|||
|
||||
set -euo pipefail
|
||||
|
||||
# With Go 1.20, we need to set this so that we produce statically compiled binaries
|
||||
#
|
||||
# Starting with Go 1.20, Go will produce binaries that are dynamically linked against libc
|
||||
# which can cause compatibility issues. The compiler links against libc on the build system
|
||||
# but that may be newer than on the stacks we support.
|
||||
export CGO_ENABLED=0
|
||||
|
||||
if [[ "${INCLUDE_DEPENDENCIES}" == "true" ]]; then
|
||||
create-package \
|
||||
--source ${SOURCE_PATH:-.} \
|
||||
--source "${SOURCE_PATH:-.}" \
|
||||
--cache-location "${HOME}"/carton-cache \
|
||||
--destination "${HOME}"/buildpack \
|
||||
--include-dependencies \
|
||||
--version "${VERSION}"
|
||||
else
|
||||
create-package \
|
||||
--source ${SOURCE_PATH:-.} \
|
||||
--source "${SOURCE_PATH:-.}" \
|
||||
--destination "${HOME}"/buildpack \
|
||||
--version "${VERSION}"
|
||||
fi
|
||||
|
||||
PACKAGE_FILE=${SOURCE_PATH:-.}/package.toml
|
||||
[[ -e ${PACKAGE_FILE} ]] && cp ${PACKAGE_FILE} "${HOME}"/package.toml
|
||||
printf '[buildpack]\nuri = "%s"\n\n[platform]\nos = "%s"\n' "${HOME}"/buildpack "${OS}" >> "${HOME}"/package.toml
|
||||
PACKAGE_FILE="${SOURCE_PATH:-.}/package.toml"
|
||||
if [ -f "${PACKAGE_FILE}" ]; then
|
||||
cp "${PACKAGE_FILE}" "${HOME}/buildpack/package.toml"
|
||||
printf '[buildpack]\nuri = "%s"\n\n[platform]\nos = "%s"\n' "${HOME}/buildpack" "${OS}" >> "${HOME}/buildpack/package.toml"
|
||||
fi
|
||||
env:
|
||||
INCLUDE_DEPENDENCIES: "true"
|
||||
OS: linux
|
||||
|
@ -129,15 +127,23 @@ jobs:
|
|||
|
||||
set -euo pipefail
|
||||
|
||||
COMPILED_BUILDPACK="${HOME}/buildpack"
|
||||
|
||||
# create-package puts the buildpack here, we need to run from that directory
|
||||
# for component buildpacks so that pack doesn't need a package.toml
|
||||
cd "${COMPILED_BUILDPACK}"
|
||||
CONFIG=""
|
||||
if [ -f "${COMPILED_BUILDPACK}/package.toml" ]; then
|
||||
CONFIG="--config ${COMPILED_BUILDPACK}/package.toml"
|
||||
fi
|
||||
|
||||
PACKAGE_LIST=($PACKAGES)
|
||||
# Extract first repo (Docker Hub) as the main to package & register
|
||||
PACKAGE=${PACKAGE_LIST[0]}
|
||||
|
||||
if [[ "${PUBLISH:-x}" == "true" ]]; then
|
||||
pack buildpack package \
|
||||
"${PACKAGE}:${VERSION}" \
|
||||
--config "${HOME}"/package.toml \
|
||||
pack -v buildpack package \
|
||||
"${PACKAGE}:${VERSION}" ${CONFIG} \
|
||||
--publish
|
||||
|
||||
if [[ -n ${VERSION_MINOR:-} && -n ${VERSION_MAJOR:-} ]]; then
|
||||
|
@ -161,29 +167,29 @@ jobs:
|
|||
done
|
||||
|
||||
else
|
||||
pack buildpack package \
|
||||
"${PACKAGE}:${VERSION}" \
|
||||
--config "${HOME}"/package.toml \
|
||||
--format "${FORMAT}"
|
||||
pack -v buildpack package \
|
||||
"${PACKAGE}:${VERSION}" ${CONFIG} \
|
||||
--format "${FORMAT}" $([ -n "$TTL_SH_PUBLISH" ] && [ "$TTL_SH_PUBLISH" = "true" ] && echo "--publish")
|
||||
fi
|
||||
env:
|
||||
FORMAT: image
|
||||
PACKAGES: test
|
||||
TTL_SH_PUBLISH: "false"
|
||||
VERSION: ${{ steps.version.outputs.version }}
|
||||
unit:
|
||||
name: Unit Test
|
||||
runs-on:
|
||||
- ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/cache@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/cache@v4
|
||||
with:
|
||||
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
|
||||
path: ${{ env.HOME }}/go/pkg/mod
|
||||
restore-keys: ${{ runner.os }}-go-
|
||||
- uses: actions/setup-go@v3
|
||||
- uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version: "1.18"
|
||||
go-version: "1.24"
|
||||
- name: Install richgo
|
||||
run: |
|
||||
#!/usr/bin/env bash
|
||||
|
|
|
@ -13,7 +13,7 @@ jobs:
|
|||
uses: release-drafter/release-drafter@v5
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.IMPLEMENTATION_GITHUB_TOKEN }}
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- name: Update draft release with buildpack information
|
||||
uses: docker://ghcr.io/paketo-buildpacks/actions/draft-release:main
|
||||
with:
|
||||
|
|
|
@ -9,10 +9,10 @@ jobs:
|
|||
runs-on:
|
||||
- ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/setup-go@v3
|
||||
- uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version: "1.18"
|
||||
- uses: actions/checkout@v3
|
||||
go-version: "1.24"
|
||||
- uses: actions/checkout@v4
|
||||
- name: Update Go Version & Modules
|
||||
id: update-go
|
||||
run: |
|
||||
|
@ -25,11 +25,11 @@ jobs:
|
|||
exit 1
|
||||
fi
|
||||
|
||||
OLD_GO_VERSION=$(grep -P '^go \d\.\d+' go.mod | cut -d ' ' -f 2)
|
||||
OLD_GO_VERSION=$(grep -P '^go \d\.\d+' go.mod | cut -d ' ' -f 2 | cut -d '.' -f 1-2)
|
||||
|
||||
go mod edit -go="$GO_VERSION"
|
||||
go mod tidy
|
||||
go get -u all
|
||||
go get -u -t ./...
|
||||
go mod tidy
|
||||
|
||||
git add go.mod go.sum
|
||||
|
@ -49,8 +49,8 @@ jobs:
|
|||
echo "commit-body=${COMMIT_BODY}" >> "$GITHUB_OUTPUT"
|
||||
echo "commit-semver=${COMMIT_SEMVER}" >> "$GITHUB_OUTPUT"
|
||||
env:
|
||||
GO_VERSION: "1.18"
|
||||
- uses: peter-evans/create-pull-request@v4
|
||||
GO_VERSION: "1.24"
|
||||
- uses: peter-evans/create-pull-request@v6
|
||||
with:
|
||||
author: ${{ secrets.IMPLEMENTATION_GITHUB_USERNAME }} <${{ secrets.IMPLEMENTATION_GITHUB_USERNAME }}@users.noreply.github.com>
|
||||
body: |-
|
||||
|
|
|
@ -14,9 +14,9 @@ jobs:
|
|||
runs-on:
|
||||
- ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/setup-go@v3
|
||||
- uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version: "1.18"
|
||||
go-version: "1.24"
|
||||
- name: Install octo
|
||||
run: |
|
||||
#!/usr/bin/env bash
|
||||
|
@ -24,7 +24,7 @@ jobs:
|
|||
set -euo pipefail
|
||||
|
||||
go install -ldflags="-s -w" github.com/paketo-buildpacks/pipeline-builder/cmd/octo@latest
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- name: Update Pipeline
|
||||
id: pipeline
|
||||
run: |
|
||||
|
@ -55,6 +55,12 @@ jobs:
|
|||
)
|
||||
|
||||
git add .github/
|
||||
git add .gitignore
|
||||
|
||||
if [ -f scripts/build.sh ]; then
|
||||
git add scripts/build.sh
|
||||
fi
|
||||
|
||||
git checkout -- .
|
||||
|
||||
echo "old-version=${OLD_VERSION}" >> "$GITHUB_OUTPUT"
|
||||
|
@ -65,7 +71,7 @@ jobs:
|
|||
env:
|
||||
DESCRIPTOR: .github/pipeline-descriptor.yml
|
||||
GITHUB_TOKEN: ${{ secrets.IMPLEMENTATION_GITHUB_TOKEN }}
|
||||
- uses: peter-evans/create-pull-request@v4
|
||||
- uses: peter-evans/create-pull-request@v6
|
||||
with:
|
||||
author: ${{ secrets.IMPLEMENTATION_GITHUB_USERNAME }} <${{ secrets.IMPLEMENTATION_GITHUB_USERNAME }}@users.noreply.github.com>
|
||||
body: |-
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# Copyright 2018-2022 the original author or authors.
|
||||
# Copyright 2018-2020 the original author or authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
|
@ -13,6 +13,8 @@
|
|||
# limitations under the License.
|
||||
|
||||
bin/
|
||||
linux/
|
||||
dependencies/
|
||||
package/
|
||||
scratch/
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# Copyright 2018-2022 the original author or authors.
|
||||
# Copyright 2018-2024 the original author or authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
|
@ -15,23 +15,29 @@
|
|||
api = "0.8"
|
||||
|
||||
[buildpack]
|
||||
id = "buildpacksio/profile"
|
||||
name = "Profile Buildpack"
|
||||
version = "{{.version}}"
|
||||
homepage = "https://github.com/buildpacks/profile"
|
||||
description = "A Cloud Native Buildpack that handles profile scripts"
|
||||
homepage = "https://github.com/buildpacks/profile"
|
||||
id = "buildpacksio/profile"
|
||||
keywords = ["profile", "bash"]
|
||||
name = "Profile Buildpack"
|
||||
sbom-formats = ["application/vnd.cyclonedx+json", "application/vnd.syft+json"]
|
||||
version = "{{.version}}"
|
||||
|
||||
[[stacks]]
|
||||
id = "*"
|
||||
[[buildpack.licenses]]
|
||||
type = "Apache-2.0"
|
||||
uri = "https://github.com/paketo-buildpacks/apache-tomcat/blob/main/LICENSE"
|
||||
|
||||
[metadata]
|
||||
pre-package = "scripts/build.sh"
|
||||
include-files = [
|
||||
"LICENSE",
|
||||
"NOTICE",
|
||||
"README.md",
|
||||
"bin/build",
|
||||
"bin/detect",
|
||||
"bin/main",
|
||||
"scripts/profiled-wrapper.sh",
|
||||
"buildpack.toml",
|
||||
]
|
||||
pre-package = "scripts/build.sh"
|
||||
include-files = ["LICENSE", "NOTICE", "README.md", "linux/amd64/bin/build", "linux/amd64/bin/detect", "linux/amd64/bin/main", "linux/arm64/bin/build", "linux/arm64/bin/detect", "linux/arm64/bin/main", "scripts/profiled-wrapper.sh", "buildpack.toml"]
|
||||
|
||||
[[stacks]]
|
||||
id = "*"
|
||||
|
||||
[[targets]]
|
||||
arch = "amd64"
|
||||
os = "linux"
|
||||
|
||||
[[targets]]
|
||||
arch = "arm64"
|
||||
os = "linux"
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright 2018-2022 the original author or authors.
|
||||
* Copyright 2018-2023 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
@ -19,9 +19,9 @@ package main
|
|||
import (
|
||||
"github.com/buildpacks/profile/profile"
|
||||
|
||||
"github.com/buildpacks/libcnb"
|
||||
"github.com/buildpacks/libcnb/v2"
|
||||
)
|
||||
|
||||
func main() {
|
||||
libcnb.Main(profile.Detect, profile.Build)
|
||||
libcnb.BuildpackMain(profile.Detect, profile.Build)
|
||||
}
|
||||
|
|
16
go.mod
16
go.mod
|
@ -1,18 +1,20 @@
|
|||
module github.com/buildpacks/profile
|
||||
|
||||
go 1.18
|
||||
go 1.24
|
||||
|
||||
require (
|
||||
github.com/buildpacks/libcnb v1.24.1-0.20221215190620-3308e7799723
|
||||
github.com/onsi/gomega v1.27.3
|
||||
github.com/buildpacks/libcnb/v2 v2.0.0
|
||||
github.com/onsi/gomega v1.37.0
|
||||
)
|
||||
|
||||
require github.com/Masterminds/semver v1.5.0 // indirect
|
||||
|
||||
require (
|
||||
github.com/BurntSushi/toml v1.2.1 // indirect
|
||||
github.com/google/go-cmp v0.5.9 // indirect
|
||||
golang.org/x/net v0.8.0 // indirect
|
||||
golang.org/x/text v0.8.0 // indirect
|
||||
github.com/BurntSushi/toml v1.5.0 // indirect
|
||||
github.com/google/go-cmp v0.7.0 // indirect
|
||||
github.com/kr/pretty v0.3.1 // indirect
|
||||
github.com/rogpeppe/go-internal v1.10.0 // indirect
|
||||
golang.org/x/net v0.41.0 // indirect
|
||||
golang.org/x/text v0.26.0 // indirect
|
||||
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||
)
|
||||
|
|
64
go.sum
64
go.sum
|
@ -1,32 +1,50 @@
|
|||
github.com/BurntSushi/toml v1.2.1 h1:9F2/+DoOYIOksmaJFPw1tGFy1eDnIJXg+UHjuD8lTak=
|
||||
github.com/BurntSushi/toml v1.2.1/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ=
|
||||
github.com/CycloneDX/cyclonedx-go v0.7.0 h1:jNxp8hL7UpcvPDFXjY+Y1ibFtsW+e5zyF9QoSmhK/zg=
|
||||
github.com/BurntSushi/toml v1.5.0 h1:W5quZX/G/csjUnuI8SUYlsHs9M38FC7znL0lIO+DvMg=
|
||||
github.com/BurntSushi/toml v1.5.0/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho=
|
||||
github.com/Masterminds/semver v1.5.0 h1:H65muMkzWKEuNDnfl9d70GUjFniHKHRbFPGBuZ3QEww=
|
||||
github.com/Masterminds/semver v1.5.0/go.mod h1:MB6lktGJrhw8PrUyiEoblNEGEQ+RzHPF078ddwwvV3Y=
|
||||
github.com/buildpacks/libcnb v1.24.1-0.20221215190620-3308e7799723 h1:iFInBmJqo4uaWenbA6rkVxvACqiJ+6QuzdU92BcRzvw=
|
||||
github.com/buildpacks/libcnb v1.24.1-0.20221215190620-3308e7799723/go.mod h1:q97KVDzU/vUzxX/722sZQDhrKTCaKsuFVu93ItEcZrs=
|
||||
github.com/buildpacks/libcnb/v2 v2.0.0 h1:RvoUy2g1K/6tuxpIeV9lFrAwvLZsFvdOXbjtxtaeIr8=
|
||||
github.com/buildpacks/libcnb/v2 v2.0.0/go.mod h1:ePaIqWv+J9251MzBnKNWVXpgxIfopqNp9VaupsKM4LM=
|
||||
github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
|
||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||
github.com/go-logr/logr v1.2.3 h1:2DntVwHkVopvECVRSlL5PSo9eG+cAkDCuckLubN+rq0=
|
||||
github.com/go-task/slim-sprig v0.0.0-20210107165309-348f09dbbbc0 h1:p104kn46Q8WdvHunIJ9dAyjPVtrBPhSr3KT2yUst43I=
|
||||
github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38=
|
||||
github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
|
||||
github.com/google/pprof v0.0.0-20210407192527-94a9f03dee38 h1:yAJXTCF9TqKcTiHJAE8dj7HMvPfh66eeA2JYW7eFpSE=
|
||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY=
|
||||
github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
|
||||
github.com/go-task/slim-sprig/v3 v3.0.0 h1:sUs3vkvUymDpBKi3qH1YSqBQk9+9D/8M2mN1vB6EwHI=
|
||||
github.com/go-task/slim-sprig/v3 v3.0.0/go.mod h1:W848ghGpv3Qj3dhTPRyJypKRiqCdHZiAzKg9hl15HA8=
|
||||
github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
|
||||
github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
|
||||
github.com/google/pprof v0.0.0-20241210010833-40e02aabc2ad h1:a6HEuzUHeKH6hwfN/ZoQgRgVIWFJljSWa/zetS2WTvg=
|
||||
github.com/google/pprof v0.0.0-20241210010833-40e02aabc2ad/go.mod h1:vavhavw2zAxS5dIdcRluK6cSGGPlZynqzFM8NdvU144=
|
||||
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
|
||||
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
|
||||
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
|
||||
github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e h1:fD57ERR4JtEqsWbfPhv4DMiApHyliiK5xCTNVSPiaAs=
|
||||
github.com/onsi/ginkgo/v2 v2.9.0 h1:Tugw2BKlNHTMfG+CheOITkYvk4LAh6MFOvikhGVnhE8=
|
||||
github.com/onsi/gomega v1.27.3 h1:5VwIwnBY3vbBDOJrNtA4rVdiTZCsq9B5F12pvy1Drmk=
|
||||
github.com/onsi/gomega v1.27.3/go.mod h1:5vG284IBtfDAmDyrK+eGyZmUgUlmi+Wngqo557cZ6Gw=
|
||||
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
|
||||
github.com/onsi/ginkgo/v2 v2.23.3 h1:edHxnszytJ4lD9D5Jjc4tiDkPBZ3siDeJJkUZJJVkp0=
|
||||
github.com/onsi/ginkgo/v2 v2.23.3/go.mod h1:zXTP6xIp3U8aVuXN8ENK9IXRaTjFnpVB9mGmaSRvxnM=
|
||||
github.com/onsi/gomega v1.37.0 h1:CdEG8g0S133B4OswTDC/5XPSzE1OeP29QOioj2PID2Y=
|
||||
github.com/onsi/gomega v1.37.0/go.mod h1:8D9+Txp43QWKhM24yyOBEdpkzN8FvJyAwecBgsU4KU0=
|
||||
github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA=
|
||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
github.com/rogpeppe/go-internal v1.9.0/go.mod h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/fJaraNFVN+nFs=
|
||||
github.com/rogpeppe/go-internal v1.10.0 h1:TMyTOH3F/DB16zRVcYyreMH6GnZZrwQVAoYjRBZyWFQ=
|
||||
github.com/rogpeppe/go-internal v1.10.0/go.mod h1:UQnix2H7Ngw/k4C5ijL5+65zddjncjaFoBhdsK/akog=
|
||||
github.com/sclevine/spec v1.4.0 h1:z/Q9idDcay5m5irkZ28M7PtQM4aOISzOpj4bUPkDee8=
|
||||
github.com/stretchr/objx v0.5.0 h1:1zr/of2m5FGMsad5YfcqgdqdWrIhu+EBEJRhR1U7z/c=
|
||||
github.com/stretchr/testify v1.8.1 h1:w7B6lhMri9wdJUVmEZPGGhZzrYTPvgJArz7wNPgYKsk=
|
||||
golang.org/x/net v0.8.0 h1:Zrh2ngAOFYneWTAIAPethzeaQLuHwhuBkuV6ZiRnUaQ=
|
||||
golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc=
|
||||
golang.org/x/sys v0.6.0 h1:MVltZSvRTcU2ljQOhs94SXPftV6DCNnZViHeQps87pQ=
|
||||
golang.org/x/text v0.8.0 h1:57P1ETyNKtuIjB4SRd15iJxuhj8Gc416Y78H3qgMh68=
|
||||
golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=
|
||||
golang.org/x/tools v0.6.0 h1:BOw41kyTf3PuCW1pVQf8+Cyg8pMlkYB1oo9iJ6D/lKM=
|
||||
github.com/sclevine/spec v1.4.0/go.mod h1:LvpgJaFyvQzRvc1kaDs0bulYwzC70PbiYjC4QnFHkOM=
|
||||
github.com/stretchr/objx v0.5.2 h1:xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY=
|
||||
github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA=
|
||||
github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg=
|
||||
github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
|
||||
golang.org/x/net v0.41.0 h1:vBTly1HeNPEn3wtREYfy4GZ/NECgw2Cnl+nK6Nz3uvw=
|
||||
golang.org/x/net v0.41.0/go.mod h1:B/K4NNqkfmg07DQYrbwvSluqCJOOXwUjeb/5lOisjbA=
|
||||
golang.org/x/sys v0.33.0 h1:q3i8TbbEz+JRD9ywIRlyRAQbM0qF7hu24q3teo2hbuw=
|
||||
golang.org/x/sys v0.33.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
|
||||
golang.org/x/text v0.26.0 h1:P42AVeLghgTYr4+xUnTRKDMqpar+PtX7KWuNQL21L8M=
|
||||
golang.org/x/text v0.26.0/go.mod h1:QK15LZJUUQVJxhz7wXgxSy/CJaTFjd0G+YLonydOVQA=
|
||||
golang.org/x/tools v0.33.0 h1:4qz2S3zmRxbGIhDIAgjxvFutSvH5EfnsYrRBj0UI0bc=
|
||||
golang.org/x/tools v0.33.0/go.mod h1:CIJMaWEY88juyUfo7UbgPqbC8rU2OqfAV1h2Qp0oMYI=
|
||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f h1:BLraFXnmrev5lT+xlilqcH8XK9/i0At2xKjWk4p6zsU=
|
||||
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
|
||||
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
|
||||
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
|
||||
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||
|
|
|
@ -5,9 +5,8 @@ linters:
|
|||
disable-all: true
|
||||
enable:
|
||||
- bodyclose
|
||||
- deadcode
|
||||
- dogsled
|
||||
- exportloopref
|
||||
- copyloopvar
|
||||
- gocritic
|
||||
- goimports
|
||||
- gosec
|
||||
|
@ -18,14 +17,16 @@ linters:
|
|||
- nakedret
|
||||
- revive
|
||||
- staticcheck
|
||||
- structcheck
|
||||
- stylecheck
|
||||
- typecheck
|
||||
- unconvert
|
||||
- unused
|
||||
- varcheck
|
||||
- whitespace
|
||||
|
||||
linters-settings:
|
||||
revive:
|
||||
rules:
|
||||
- name: dot-imports
|
||||
disabled: true
|
||||
goimports:
|
||||
local-prefixes: github.com/buildpacks/profile
|
||||
|
|
|
@ -20,11 +20,10 @@ import (
|
|||
"os"
|
||||
"path/filepath"
|
||||
|
||||
"github.com/buildpacks/libcnb"
|
||||
"github.com/buildpacks/libcnb/v2"
|
||||
)
|
||||
|
||||
func Build(context libcnb.BuildContext) (libcnb.BuildResult, error) {
|
||||
// NOTE: the logger is not passed into this function, that will likely be a change in libcnbv2
|
||||
result := libcnb.NewBuildResult()
|
||||
|
||||
layer, err := context.Layers.Layer(profileName)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright 2018-2022 the original author or authors.
|
||||
* Copyright 2018-2024 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
@ -25,7 +25,7 @@ import (
|
|||
|
||||
"github.com/buildpacks/profile/profile"
|
||||
|
||||
"github.com/buildpacks/libcnb"
|
||||
"github.com/buildpacks/libcnb/v2"
|
||||
)
|
||||
|
||||
type BuildTest struct {
|
||||
|
@ -86,7 +86,6 @@ func TestBuildExecutes(t *testing.T) {
|
|||
SharedEnvironment: libcnb.Environment{},
|
||||
Name: "profile",
|
||||
Path: filepath.Join(ctx.Layers.Path, "profile"),
|
||||
Profile: libcnb.Profile{},
|
||||
Exec: libcnb.Exec{
|
||||
Path: filepath.Join(ctx.Layers.Path, "profile", "exec.d"),
|
||||
},
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright 2018-2022 the original author or authors.
|
||||
* Copyright 2018-2024 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
@ -21,18 +21,18 @@ import (
|
|||
"os/exec"
|
||||
"path/filepath"
|
||||
|
||||
"github.com/buildpacks/libcnb"
|
||||
"github.com/buildpacks/libcnb/v2"
|
||||
)
|
||||
|
||||
func Detect(context libcnb.DetectContext) (libcnb.DetectResult, error) {
|
||||
// NOTE: the logger is not passed into this function, that will likely be a change in libcnbv2
|
||||
|
||||
_, shErr := exec.LookPath("bash")
|
||||
|
||||
profilePath := filepath.Join(context.ApplicationPath, scriptName)
|
||||
if _, err := os.Stat(profilePath); shErr == nil && !os.IsNotExist(err) {
|
||||
context.Logger.Debug("PASSED: a .profile application exists and bash is available")
|
||||
return libcnb.DetectResult{Pass: true, Plans: []libcnb.BuildPlan{}}, nil
|
||||
}
|
||||
|
||||
context.Logger.Debug("SKIPPED: a .profile application does not exist or bash is not available")
|
||||
return libcnb.DetectResult{Pass: false}, nil
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright 2018-2022 the original author or authors.
|
||||
* Copyright 2018-2024 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
@ -26,7 +26,8 @@ import (
|
|||
|
||||
"github.com/buildpacks/profile/profile"
|
||||
|
||||
"github.com/buildpacks/libcnb"
|
||||
"github.com/buildpacks/libcnb/v2"
|
||||
"github.com/buildpacks/libcnb/v2/log"
|
||||
)
|
||||
|
||||
type ExpectFunc func(actual interface{}, extra ...interface{}) types.Assertion
|
||||
|
@ -46,6 +47,7 @@ func NewDetectTestBuilder(t *testing.T) DetectTest {
|
|||
|
||||
func (d DetectTest) SetupWorkspace() DetectTest {
|
||||
d.context.ApplicationPath = d.test.TempDir()
|
||||
d.context.Logger = log.NewDiscard()
|
||||
return d
|
||||
}
|
||||
|
||||
|
|
|
@ -1,16 +1,19 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
GOOS="linux" go build -ldflags='-s -w' -o bin/main github.com/buildpacks/profile/cmd/main
|
||||
GOMOD=$(head -1 go.mod | awk '{print $2}')
|
||||
GOOS="linux" GOARCH="amd64" go build -ldflags='-s -w' -o linux/amd64/bin/main "$GOMOD/cmd/main"
|
||||
GOOS="linux" GOARCH="arm64" go build -ldflags='-s -w' -o linux/arm64/bin/main "$GOMOD/cmd/main"
|
||||
|
||||
if [ "${STRIP:-false}" != "false" ]; then
|
||||
strip bin/main
|
||||
strip linux/amd64/bin/main linux/arm64/bin/main
|
||||
fi
|
||||
|
||||
if [ "${COMPRESS:-none}" != "none" ]; then
|
||||
$COMPRESS bin/main
|
||||
$COMPRESS linux/amd64/bin/main linux/arm64/bin/main
|
||||
fi
|
||||
|
||||
ln -fs main bin/build
|
||||
ln -fs main bin/detect
|
||||
ln -fs main linux/amd64/bin/build
|
||||
ln -fs main linux/arm64/bin/build
|
||||
ln -fs main linux/amd64/bin/detect
|
||||
ln -fs main linux/arm64/bin/detect
|
274
tools/go.mod
274
tools/go.mod
|
@ -1,158 +1,190 @@
|
|||
module github.com/buildpacks/libcnb/tools
|
||||
module github.com/buildpacks/libcnb/tools/v2
|
||||
|
||||
go 1.17
|
||||
go 1.22.1
|
||||
|
||||
require golang.org/x/tools v0.1.12
|
||||
toolchain go1.23.2
|
||||
|
||||
require github.com/golangci/golangci-lint v1.45.2
|
||||
require golang.org/x/tools v0.26.0
|
||||
|
||||
require github.com/golangci/golangci-lint v1.61.0
|
||||
|
||||
require (
|
||||
4d63.com/gochecknoglobals v0.1.0 // indirect
|
||||
github.com/Antonboom/errname v0.1.5 // indirect
|
||||
github.com/Antonboom/nilnil v0.1.0 // indirect
|
||||
github.com/BurntSushi/toml v1.0.0 // indirect
|
||||
4d63.com/gocheckcompilerdirectives v1.2.1 // indirect
|
||||
4d63.com/gochecknoglobals v0.2.1 // indirect
|
||||
github.com/4meepo/tagalign v1.3.4 // indirect
|
||||
github.com/Abirdcfly/dupword v0.1.1 // indirect
|
||||
github.com/Antonboom/errname v0.1.13 // indirect
|
||||
github.com/Antonboom/nilnil v0.1.9 // indirect
|
||||
github.com/Antonboom/testifylint v1.4.3 // indirect
|
||||
github.com/BurntSushi/toml v1.4.1-0.20240526193622-a339e1f7089c // indirect
|
||||
github.com/Crocmagnon/fatcontext v0.5.2 // indirect
|
||||
github.com/Djarvur/go-err113 v0.0.0-20210108212216-aea10b59be24 // indirect
|
||||
github.com/Masterminds/semver v1.5.0 // indirect
|
||||
github.com/OpenPeeDeeP/depguard v1.1.0 // indirect
|
||||
github.com/GaijinEntertainment/go-exhaustruct/v3 v3.3.0 // indirect
|
||||
github.com/Masterminds/semver/v3 v3.3.0 // indirect
|
||||
github.com/OpenPeeDeeP/depguard/v2 v2.2.0 // indirect
|
||||
github.com/alecthomas/go-check-sumtype v0.1.4 // indirect
|
||||
github.com/alexkohler/nakedret/v2 v2.0.4 // indirect
|
||||
github.com/alexkohler/prealloc v1.0.0 // indirect
|
||||
github.com/ashanbrown/forbidigo v1.3.0 // indirect
|
||||
github.com/alingse/asasalint v0.0.11 // indirect
|
||||
github.com/ashanbrown/forbidigo v1.6.0 // indirect
|
||||
github.com/ashanbrown/makezero v1.1.1 // indirect
|
||||
github.com/beorn7/perks v1.0.1 // indirect
|
||||
github.com/bkielbasa/cyclop v1.2.0 // indirect
|
||||
github.com/blizzy78/varnamelen v0.6.1 // indirect
|
||||
github.com/bombsimon/wsl/v3 v3.3.0 // indirect
|
||||
github.com/breml/bidichk v0.2.2 // indirect
|
||||
github.com/breml/errchkjson v0.2.3 // indirect
|
||||
github.com/butuzov/ireturn v0.1.1 // indirect
|
||||
github.com/bkielbasa/cyclop v1.2.1 // indirect
|
||||
github.com/blizzy78/varnamelen v0.8.0 // indirect
|
||||
github.com/bombsimon/wsl/v4 v4.4.1 // indirect
|
||||
github.com/breml/bidichk v0.2.7 // indirect
|
||||
github.com/breml/errchkjson v0.3.6 // indirect
|
||||
github.com/butuzov/ireturn v0.3.0 // indirect
|
||||
github.com/butuzov/mirror v1.2.0 // indirect
|
||||
github.com/catenacyber/perfsprint v0.7.1 // indirect
|
||||
github.com/ccojocar/zxcvbn-go v1.0.2 // indirect
|
||||
github.com/cespare/xxhash/v2 v2.1.2 // indirect
|
||||
github.com/charithe/durationcheck v0.0.9 // indirect
|
||||
github.com/chavacava/garif v0.0.0-20210405164556-e8a0a408d6af // indirect
|
||||
github.com/daixiang0/gci v0.3.3 // indirect
|
||||
github.com/charithe/durationcheck v0.0.10 // indirect
|
||||
github.com/chavacava/garif v0.1.0 // indirect
|
||||
github.com/ckaznocha/intrange v0.2.0 // indirect
|
||||
github.com/curioswitch/go-reassign v0.2.0 // indirect
|
||||
github.com/daixiang0/gci v0.13.5 // indirect
|
||||
github.com/davecgh/go-spew v1.1.1 // indirect
|
||||
github.com/denis-tingaikin/go-header v0.4.3 // indirect
|
||||
github.com/esimonov/ifshort v1.0.4 // indirect
|
||||
github.com/ettle/strcase v0.1.1 // indirect
|
||||
github.com/fatih/color v1.13.0 // indirect
|
||||
github.com/denis-tingaikin/go-header v0.5.0 // indirect
|
||||
github.com/ettle/strcase v0.2.0 // indirect
|
||||
github.com/fatih/color v1.17.0 // indirect
|
||||
github.com/fatih/structtag v1.2.0 // indirect
|
||||
github.com/fsnotify/fsnotify v1.5.1 // indirect
|
||||
github.com/fzipp/gocyclo v0.4.0 // indirect
|
||||
github.com/go-critic/go-critic v0.6.2 // indirect
|
||||
github.com/go-toolsmith/astcast v1.0.0 // indirect
|
||||
github.com/go-toolsmith/astcopy v1.0.0 // indirect
|
||||
github.com/go-toolsmith/astequal v1.0.1 // indirect
|
||||
github.com/go-toolsmith/astfmt v1.0.0 // indirect
|
||||
github.com/go-toolsmith/astp v1.0.0 // indirect
|
||||
github.com/go-toolsmith/strparse v1.0.0 // indirect
|
||||
github.com/go-toolsmith/typep v1.0.2 // indirect
|
||||
github.com/go-xmlfmt/xmlfmt v0.0.0-20191208150333-d5b6f63a941b // indirect
|
||||
github.com/firefart/nonamedreturns v1.0.5 // indirect
|
||||
github.com/fsnotify/fsnotify v1.5.4 // indirect
|
||||
github.com/fzipp/gocyclo v0.6.0 // indirect
|
||||
github.com/ghostiam/protogetter v0.3.6 // indirect
|
||||
github.com/go-critic/go-critic v0.11.4 // indirect
|
||||
github.com/go-toolsmith/astcast v1.1.0 // indirect
|
||||
github.com/go-toolsmith/astcopy v1.1.0 // indirect
|
||||
github.com/go-toolsmith/astequal v1.2.0 // indirect
|
||||
github.com/go-toolsmith/astfmt v1.1.0 // indirect
|
||||
github.com/go-toolsmith/astp v1.1.0 // indirect
|
||||
github.com/go-toolsmith/strparse v1.1.0 // indirect
|
||||
github.com/go-toolsmith/typep v1.1.0 // indirect
|
||||
github.com/go-viper/mapstructure/v2 v2.3.0 // indirect
|
||||
github.com/go-xmlfmt/xmlfmt v1.1.2 // indirect
|
||||
github.com/gobwas/glob v0.2.3 // indirect
|
||||
github.com/gofrs/flock v0.8.1 // indirect
|
||||
github.com/golang/protobuf v1.5.2 // indirect
|
||||
github.com/golangci/check v0.0.0-20180506172741-cfe4005ccda2 // indirect
|
||||
github.com/gofrs/flock v0.12.1 // indirect
|
||||
github.com/golang/protobuf v1.5.3 // indirect
|
||||
github.com/golangci/dupl v0.0.0-20180902072040-3e9179ac440a // indirect
|
||||
github.com/golangci/go-misc v0.0.0-20180628070357-927a3d87b613 // indirect
|
||||
github.com/golangci/gofmt v0.0.0-20190930125516-244bba706f1a // indirect
|
||||
github.com/golangci/lint-1 v0.0.0-20191013205115-297bf364a8e0 // indirect
|
||||
github.com/golangci/maligned v0.0.0-20180506175553-b1d89398deca // indirect
|
||||
github.com/golangci/misspell v0.3.5 // indirect
|
||||
github.com/golangci/revgrep v0.0.0-20210930125155-c22e5001d4f2 // indirect
|
||||
github.com/golangci/unconvert v0.0.0-20180507085042-28b1c447d1f4 // indirect
|
||||
github.com/google/go-cmp v0.5.7 // indirect
|
||||
github.com/gordonklaus/ineffassign v0.0.0-20210914165742-4cc7213b9bc8 // indirect
|
||||
github.com/golangci/gofmt v0.0.0-20240816233607-d8596aa466a9 // indirect
|
||||
github.com/golangci/misspell v0.6.0 // indirect
|
||||
github.com/golangci/modinfo v0.3.4 // indirect
|
||||
github.com/golangci/plugin-module-register v0.1.1 // indirect
|
||||
github.com/golangci/revgrep v0.5.3 // indirect
|
||||
github.com/golangci/unconvert v0.0.0-20240309020433-c5143eacb3ed // indirect
|
||||
github.com/google/go-cmp v0.6.0 // indirect
|
||||
github.com/gordonklaus/ineffassign v0.1.0 // indirect
|
||||
github.com/gostaticanalysis/analysisutil v0.7.1 // indirect
|
||||
github.com/gostaticanalysis/comment v1.4.2 // indirect
|
||||
github.com/gostaticanalysis/forcetypeassert v0.1.0 // indirect
|
||||
github.com/gostaticanalysis/nilerr v0.1.1 // indirect
|
||||
github.com/hashicorp/errwrap v1.0.0 // indirect
|
||||
github.com/hashicorp/go-multierror v1.1.1 // indirect
|
||||
github.com/hashicorp/go-version v1.4.0 // indirect
|
||||
github.com/hashicorp/go-version v1.7.0 // indirect
|
||||
github.com/hashicorp/hcl v1.0.0 // indirect
|
||||
github.com/hexops/gotextdiff v1.0.3 // indirect
|
||||
github.com/inconshreveable/mousetrap v1.0.0 // indirect
|
||||
github.com/jgautheron/goconst v1.5.1 // indirect
|
||||
github.com/inconshreveable/mousetrap v1.1.0 // indirect
|
||||
github.com/jgautheron/goconst v1.7.1 // indirect
|
||||
github.com/jingyugao/rowserrcheck v1.1.1 // indirect
|
||||
github.com/jirfag/go-printf-func-name v0.0.0-20200119135958-7558a9eaa5af // indirect
|
||||
github.com/jjti/go-spancheck v0.6.2 // indirect
|
||||
github.com/julz/importas v0.1.0 // indirect
|
||||
github.com/kisielk/errcheck v1.6.0 // indirect
|
||||
github.com/kisielk/gotool v1.0.0 // indirect
|
||||
github.com/kulti/thelper v0.5.1 // indirect
|
||||
github.com/kunwardeep/paralleltest v1.0.3 // indirect
|
||||
github.com/kyoh86/exportloopref v0.1.8 // indirect
|
||||
github.com/ldez/gomoddirectives v0.2.2 // indirect
|
||||
github.com/ldez/tagliatelle v0.3.1 // indirect
|
||||
github.com/leonklingele/grouper v1.1.0 // indirect
|
||||
github.com/magiconair/properties v1.8.5 // indirect
|
||||
github.com/maratori/testpackage v1.0.1 // indirect
|
||||
github.com/matoous/godox v0.0.0-20210227103229-6504466cf951 // indirect
|
||||
github.com/mattn/go-colorable v0.1.12 // indirect
|
||||
github.com/mattn/go-isatty v0.0.14 // indirect
|
||||
github.com/karamaru-alpha/copyloopvar v1.1.0 // indirect
|
||||
github.com/kisielk/errcheck v1.7.0 // indirect
|
||||
github.com/kkHAIKE/contextcheck v1.1.5 // indirect
|
||||
github.com/kulti/thelper v0.6.3 // indirect
|
||||
github.com/kunwardeep/paralleltest v1.0.10 // indirect
|
||||
github.com/kyoh86/exportloopref v0.1.11 // indirect
|
||||
github.com/lasiar/canonicalheader v1.1.1 // indirect
|
||||
github.com/ldez/gomoddirectives v0.2.4 // indirect
|
||||
github.com/ldez/tagliatelle v0.5.0 // indirect
|
||||
github.com/leonklingele/grouper v1.1.2 // indirect
|
||||
github.com/lufeee/execinquery v1.2.1 // indirect
|
||||
github.com/macabu/inamedparam v0.1.3 // indirect
|
||||
github.com/magiconair/properties v1.8.6 // indirect
|
||||
github.com/maratori/testableexamples v1.0.0 // indirect
|
||||
github.com/maratori/testpackage v1.1.1 // indirect
|
||||
github.com/matoous/godox v0.0.0-20230222163458-006bad1f9d26 // indirect
|
||||
github.com/mattn/go-colorable v0.1.13 // indirect
|
||||
github.com/mattn/go-isatty v0.0.20 // indirect
|
||||
github.com/mattn/go-runewidth v0.0.9 // indirect
|
||||
github.com/matttproud/golang_protobuf_extensions v1.0.1 // indirect
|
||||
github.com/mbilski/exhaustivestruct v1.2.0 // indirect
|
||||
github.com/mgechev/revive v1.1.4 // indirect
|
||||
github.com/mgechev/revive v1.3.9 // indirect
|
||||
github.com/mitchellh/go-homedir v1.1.0 // indirect
|
||||
github.com/mitchellh/mapstructure v1.4.3 // indirect
|
||||
github.com/moricho/tparallel v0.2.1 // indirect
|
||||
github.com/mitchellh/mapstructure v1.5.0 // indirect
|
||||
github.com/moricho/tparallel v0.3.2 // indirect
|
||||
github.com/nakabonne/nestif v0.3.1 // indirect
|
||||
github.com/nbutton23/zxcvbn-go v0.0.0-20210217022336-fa2cb2858354 // indirect
|
||||
github.com/nishanths/exhaustive v0.7.11 // indirect
|
||||
github.com/nishanths/predeclared v0.2.1 // indirect
|
||||
github.com/nishanths/exhaustive v0.12.0 // indirect
|
||||
github.com/nishanths/predeclared v0.2.2 // indirect
|
||||
github.com/nunnatsa/ginkgolinter v0.16.2 // indirect
|
||||
github.com/olekukonko/tablewriter v0.0.5 // indirect
|
||||
github.com/pelletier/go-toml v1.9.4 // indirect
|
||||
github.com/phayes/checkstyle v0.0.0-20170904204023-bfd46e6a821d // indirect
|
||||
github.com/pkg/errors v0.9.1 // indirect
|
||||
github.com/pelletier/go-toml v1.9.5 // indirect
|
||||
github.com/pelletier/go-toml/v2 v2.2.3 // indirect
|
||||
github.com/pmezard/go-difflib v1.0.0 // indirect
|
||||
github.com/polyfloyd/go-errorlint v0.0.0-20211125173453-6d6d39c5bb8b // indirect
|
||||
github.com/prometheus/client_golang v1.11.1 // indirect
|
||||
github.com/polyfloyd/go-errorlint v1.6.0 // indirect
|
||||
github.com/prometheus/client_golang v1.12.1 // indirect
|
||||
github.com/prometheus/client_model v0.2.0 // indirect
|
||||
github.com/prometheus/common v0.26.0 // indirect
|
||||
github.com/prometheus/procfs v0.6.0 // indirect
|
||||
github.com/quasilyte/go-ruleguard v0.3.15 // indirect
|
||||
github.com/quasilyte/gogrep v0.0.0-20220103110004-ffaa07af02e3 // indirect
|
||||
github.com/quasilyte/regex/syntax v0.0.0-20200407221936-30656e2c4a95 // indirect
|
||||
github.com/ryancurrah/gomodguard v1.2.3 // indirect
|
||||
github.com/ryanrolds/sqlclosecheck v0.3.0 // indirect
|
||||
github.com/sanposhiho/wastedassign/v2 v2.0.6 // indirect
|
||||
github.com/securego/gosec/v2 v2.10.0 // indirect
|
||||
github.com/prometheus/common v0.32.1 // indirect
|
||||
github.com/prometheus/procfs v0.7.3 // indirect
|
||||
github.com/quasilyte/go-ruleguard v0.4.3-0.20240823090925-0fe6f58b47b1 // indirect
|
||||
github.com/quasilyte/go-ruleguard/dsl v0.3.22 // indirect
|
||||
github.com/quasilyte/gogrep v0.5.0 // indirect
|
||||
github.com/quasilyte/regex/syntax v0.0.0-20210819130434-b3f0c404a727 // indirect
|
||||
github.com/quasilyte/stdinfo v0.0.0-20220114132959-f7386bf02567 // indirect
|
||||
github.com/ryancurrah/gomodguard v1.3.5 // indirect
|
||||
github.com/ryanrolds/sqlclosecheck v0.5.1 // indirect
|
||||
github.com/sanposhiho/wastedassign/v2 v2.0.7 // indirect
|
||||
github.com/santhosh-tekuri/jsonschema/v5 v5.3.1 // indirect
|
||||
github.com/sashamelentyev/interfacebloat v1.1.0 // indirect
|
||||
github.com/sashamelentyev/usestdlibvars v1.27.0 // indirect
|
||||
github.com/securego/gosec/v2 v2.21.2 // indirect
|
||||
github.com/shazow/go-diff v0.0.0-20160112020656-b6b7b6733b8c // indirect
|
||||
github.com/sirupsen/logrus v1.8.1 // indirect
|
||||
github.com/sivchari/containedctx v1.0.2 // indirect
|
||||
github.com/sivchari/tenv v1.4.7 // indirect
|
||||
github.com/sonatard/noctx v0.0.1 // indirect
|
||||
github.com/sourcegraph/go-diff v0.6.1 // indirect
|
||||
github.com/spf13/afero v1.6.0 // indirect
|
||||
github.com/spf13/cast v1.4.1 // indirect
|
||||
github.com/spf13/cobra v1.4.0 // indirect
|
||||
github.com/sirupsen/logrus v1.9.3 // indirect
|
||||
github.com/sivchari/containedctx v1.0.3 // indirect
|
||||
github.com/sivchari/tenv v1.10.0 // indirect
|
||||
github.com/sonatard/noctx v0.0.2 // indirect
|
||||
github.com/sourcegraph/go-diff v0.7.0 // indirect
|
||||
github.com/spf13/afero v1.11.0 // indirect
|
||||
github.com/spf13/cast v1.5.0 // indirect
|
||||
github.com/spf13/cobra v1.8.1 // indirect
|
||||
github.com/spf13/jwalterweatherman v1.1.0 // indirect
|
||||
github.com/spf13/pflag v1.0.5 // indirect
|
||||
github.com/spf13/viper v1.10.1 // indirect
|
||||
github.com/spf13/viper v1.12.0 // indirect
|
||||
github.com/ssgreg/nlreturn/v2 v2.2.1 // indirect
|
||||
github.com/stretchr/objx v0.1.1 // indirect
|
||||
github.com/stretchr/testify v1.7.1 // indirect
|
||||
github.com/subosito/gotenv v1.2.0 // indirect
|
||||
github.com/sylvia7788/contextcheck v1.0.4 // indirect
|
||||
github.com/tdakkota/asciicheck v0.1.1 // indirect
|
||||
github.com/tetafro/godot v1.4.11 // indirect
|
||||
github.com/timakin/bodyclose v0.0.0-20210704033933-f49887972144 // indirect
|
||||
github.com/tomarrell/wrapcheck/v2 v2.5.0 // indirect
|
||||
github.com/tommy-muehle/go-mnd/v2 v2.5.0 // indirect
|
||||
github.com/ultraware/funlen v0.0.3 // indirect
|
||||
github.com/ultraware/whitespace v0.0.5 // indirect
|
||||
github.com/uudashr/gocognit v1.0.5 // indirect
|
||||
github.com/stbenjam/no-sprintf-host-port v0.1.1 // indirect
|
||||
github.com/stretchr/objx v0.5.2 // indirect
|
||||
github.com/stretchr/testify v1.9.0 // indirect
|
||||
github.com/subosito/gotenv v1.4.1 // indirect
|
||||
github.com/tdakkota/asciicheck v0.2.0 // indirect
|
||||
github.com/tetafro/godot v1.4.17 // indirect
|
||||
github.com/timakin/bodyclose v0.0.0-20230421092635-574207250966 // indirect
|
||||
github.com/timonwong/loggercheck v0.9.4 // indirect
|
||||
github.com/tomarrell/wrapcheck/v2 v2.9.0 // indirect
|
||||
github.com/tommy-muehle/go-mnd/v2 v2.5.1 // indirect
|
||||
github.com/ultraware/funlen v0.1.0 // indirect
|
||||
github.com/ultraware/whitespace v0.1.1 // indirect
|
||||
github.com/uudashr/gocognit v1.1.3 // indirect
|
||||
github.com/xen0n/gosmopolitan v1.2.2 // indirect
|
||||
github.com/yagipy/maintidx v1.0.0 // indirect
|
||||
github.com/yeya24/promlinter v0.1.1-0.20210918184747-d757024714a1 // indirect
|
||||
gitlab.com/bosi/decorder v0.2.1 // indirect
|
||||
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4 // indirect
|
||||
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4 // indirect
|
||||
golang.org/x/sys v0.1.0 // indirect
|
||||
golang.org/x/text v0.3.8 // indirect
|
||||
google.golang.org/protobuf v1.27.1 // indirect
|
||||
gopkg.in/ini.v1 v1.66.2 // indirect
|
||||
github.com/yeya24/promlinter v0.3.0 // indirect
|
||||
github.com/ykadowak/zerologlint v0.1.5 // indirect
|
||||
gitlab.com/bosi/decorder v0.4.2 // indirect
|
||||
go-simpler.org/musttag v0.12.2 // indirect
|
||||
go-simpler.org/sloglint v0.7.2 // indirect
|
||||
go.uber.org/atomic v1.7.0 // indirect
|
||||
go.uber.org/automaxprocs v1.5.3 // indirect
|
||||
go.uber.org/multierr v1.6.0 // indirect
|
||||
go.uber.org/zap v1.24.0 // indirect
|
||||
golang.org/x/exp v0.0.0-20240904232852-e7e105dedf7e // indirect
|
||||
golang.org/x/exp/typeparams v0.0.0-20240314144324-c7f7c6466f7f // indirect
|
||||
golang.org/x/mod v0.21.0 // indirect
|
||||
golang.org/x/sync v0.8.0 // indirect
|
||||
golang.org/x/sys v0.26.0 // indirect
|
||||
golang.org/x/text v0.18.0 // indirect
|
||||
google.golang.org/protobuf v1.34.2 // indirect
|
||||
gopkg.in/ini.v1 v1.67.0 // indirect
|
||||
gopkg.in/yaml.v2 v2.4.0 // indirect
|
||||
gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b // indirect
|
||||
honnef.co/go/tools v0.2.2 // indirect
|
||||
mvdan.cc/gofumpt v0.3.0 // indirect
|
||||
mvdan.cc/interfacer v0.0.0-20180901003855-c20040233aed // indirect
|
||||
mvdan.cc/lint v0.0.0-20170908181259-adc824a0674b // indirect
|
||||
mvdan.cc/unparam v0.0.0-20211214103731-d0ef000c54e5 // indirect
|
||||
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||
honnef.co/go/tools v0.5.1 // indirect
|
||||
mvdan.cc/gofumpt v0.7.0 // indirect
|
||||
mvdan.cc/unparam v0.0.0-20240528143540-8a5130ca722f // indirect
|
||||
)
|
||||
|
|
1222
tools/go.sum
1222
tools/go.sum
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue