Skip to content

Commit

Permalink
Merge branch 'master' into vstarostin/fix-workflow
Browse files Browse the repository at this point in the history
  • Loading branch information
vstarostin authored Jul 6, 2023
2 parents 44f13e2 + 610e212 commit fcb8de9
Show file tree
Hide file tree
Showing 34 changed files with 947 additions and 145 deletions.
3 changes: 2 additions & 1 deletion .github/workflows/consumer-tests-pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,9 +44,10 @@ jobs:
with:
repository: ${{ steps.repository.outputs.repository }}
ref: ${{ steps.branch_name.outputs.branch_name }}
- uses: actions/setup-java@v1
- uses: actions/setup-java@v3
with:
java-version: 11
distribution: zulu
- name: Install Groovy
run: |
sudo apt-get update
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/consumer-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,10 @@ jobs:
steps:
- uses: styfle/[email protected]
- uses: actions/checkout@v3
- uses: actions/setup-java@v1
- uses: actions/setup-java@v3
with:
java-version: 11
distribution: zulu
- name: Install Groovy
run: |
sudo apt-get update
Expand Down
11 changes: 6 additions & 5 deletions .github/workflows/documentation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,27 +16,28 @@ jobs:

- uses: actions/checkout@v3

- uses: actions/setup-java@v1
- uses: actions/setup-java@v3
with:
java-version: '1.8'
java-version: 8
distribution: zulu

- uses: actions/setup-go@v1
- uses: actions/setup-go@v4
with:
go-version: '1.18.x'

- name: Install Groovy
run: sudo apt-get update && sudo apt-get install groovy -y

- name: Cache Maven Packages
uses: actions/cache@v1
uses: actions/cache@v3
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-
- name: Cache Go Packages
uses: actions/cache@v1
uses: actions/cache@v3
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/integration-tests-pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ jobs:
- uses: actions/checkout@v3
with:
ref: ${{ needs.start.outputs.sha }}
- uses: actions/setup-go@v3
- uses: actions/setup-go@v4
with:
go-version: ${{ needs.start.outputs.go_version }}
- name: Build
Expand All @@ -98,7 +98,7 @@ jobs:
- uses: actions/checkout@v3
with:
ref: ${{ needs.start.outputs.sha }}
- uses: actions/setup-go@v3
- uses: actions/setup-go@v4
with:
go-version: ${{ needs.start.outputs.go_version }}
- name: Build
Expand Down Expand Up @@ -130,7 +130,7 @@ jobs:
- uses: actions/checkout@v3
with:
ref: ${{ needs.start.outputs.sha }}
- uses: actions/setup-go@v3
- uses: actions/setup-go@v4
with:
go-version: ${{ needs.start.outputs.go_version }}
- name: Download Piper binary
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/integration-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ jobs:
- uses: actions/checkout@v3
with:
ref: ${{ needs.start.outputs.sha }}
- uses: actions/setup-go@v3
- uses: actions/setup-go@v4
with:
go-version: ${{ needs.start.outputs.go_version }}
- name: Build
Expand All @@ -70,7 +70,7 @@ jobs:
- uses: actions/checkout@v3
with:
ref: ${{ needs.start.outputs.sha }}
- uses: actions/setup-go@v3
- uses: actions/setup-go@v4
with:
go-version: ${{ needs.start.outputs.go_version }}
- name: Build
Expand Down Expand Up @@ -102,7 +102,7 @@ jobs:
- uses: actions/checkout@v3
with:
ref: ${{ needs.start.outputs.sha }}
- uses: actions/setup-go@v3
- uses: actions/setup-go@v4
with:
go-version: ${{ needs.start.outputs.go_version }}
- name: Download Piper binary
Expand Down
5 changes: 3 additions & 2 deletions .github/workflows/release-go.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,10 @@ jobs:
- uses: styfle/[email protected]
- uses: actions/checkout@v3
# Workaround for https://github.com/SAP/jenkins-library/issues/1723, build only works with jdk8 currently
- uses: actions/setup-java@v1
- uses: actions/setup-java@v3
with:
java-version: '8'
java-version: 8
distribution: zulu
- name: Prepare Release
run: |
curl --insecure --silent --location --write-out '%{http_code}' --output ./piper_master https://github.com/SAP/jenkins-library/releases/latest/download/piper_master
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/update-go-dependencies.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ jobs:
steps:
- uses: styfle/[email protected]
- uses: actions/checkout@v3
- uses: actions/setup-go@v1
- uses: actions/setup-go@v4
with:
go-version: '1.18.x'
- name: Perform update
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/upload-go-master.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ jobs:
steps:
- uses: styfle/[email protected]
- uses: actions/checkout@v3
- uses: actions/setup-go@v1
- uses: actions/setup-go@v4
with:
go-version: '1.18.x'
- env:
Expand Down
18 changes: 9 additions & 9 deletions .github/workflows/verify-go.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,11 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: styfle/[email protected]
- uses: actions/setup-go@v1
- uses: actions/setup-go@v4
with:
go-version: '1.18.x'
- name: Cache Golang Packages
uses: actions/cache@v1
uses: actions/cache@v3
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-golang-${{ hashFiles('go.sum') }}
Expand Down Expand Up @@ -46,11 +46,11 @@ jobs:
format:
runs-on: ubuntu-latest
steps:
- uses: actions/setup-go@v1
- uses: actions/setup-go@v4
with:
go-version: '1.18.x'
- name: Cache Golang Packages
uses: actions/cache@v1
uses: actions/cache@v3
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-golang-format${{ hashFiles('go.sum') }}
Expand All @@ -66,7 +66,7 @@ jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/setup-go@v1
- uses: actions/setup-go@v4
with:
go-version: '1.19.x'
# action requires [email protected]
Expand All @@ -82,11 +82,11 @@ jobs:
generate:
runs-on: ubuntu-latest
steps:
- uses: actions/setup-go@v1
- uses: actions/setup-go@v4
with:
go-version: '1.18.x'
- name: Cache Golang Packages
uses: actions/cache@v1
uses: actions/cache@v3
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-golang-generate${{ hashFiles('go.sum') }}
Expand All @@ -102,11 +102,11 @@ jobs:
dependencies:
runs-on: ubuntu-latest
steps:
- uses: actions/setup-go@v1
- uses: actions/setup-go@v4
with:
go-version: '1.18.x'
- name: Cache Golang Packages
uses: actions/cache@v1
uses: actions/cache@v3
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-golang-dependencies${{ hashFiles('go.sum') }}
Expand Down
7 changes: 4 additions & 3 deletions .github/workflows/verify-groovy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,13 @@ jobs:

- uses: actions/checkout@v3

- uses: actions/setup-java@v1
- uses: actions/setup-java@v3
with:
java-version: 1.8
java-version: 8
distribution: zulu

- name: Cache Maven Packages
uses: actions/cache@v1
uses: actions/cache@v3
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
Expand Down
41 changes: 35 additions & 6 deletions cmd/cnbBuild.go
Original file line number Diff line number Diff line change
Expand Up @@ -112,10 +112,29 @@ func processConfigs(main cnbBuildOptions, multipleImages []map[string]interface{
return result, nil
}

func setCustomBuildpacks(bpacks []string, dockerCreds string, utils cnbutils.BuildUtils) (string, string, error) {
func setCustomBuildpacks(bpacks, preBuildpacks, postBuildpacks []string, dockerCreds string, utils cnbutils.BuildUtils) (string, string, error) {
buildpacksPath := "/tmp/buildpacks"
orderPath := "/tmp/buildpacks/order.toml"
newOrder, err := cnbutils.DownloadBuildpacks(buildpacksPath, bpacks, dockerCreds, utils)
err := cnbutils.DownloadBuildpacks(buildpacksPath, append(bpacks, append(preBuildpacks, postBuildpacks...)...), dockerCreds, utils)
if err != nil {
return "", "", err
}

if len(bpacks) == 0 && (len(postBuildpacks) > 0 || len(preBuildpacks) > 0) {
matches, err := utils.Glob("/cnb/buildpacks/*")
if err != nil {
return "", "", err
}

for _, match := range matches {
err = cnbutils.CreateVersionSymlinks(buildpacksPath, match, utils)
if err != nil {
return "", "", err
}
}
}

newOrder, err := cnbutils.CreateOrder(bpacks, preBuildpacks, postBuildpacks, dockerCreds, utils)
if err != nil {
return "", "", err
}
Expand Down Expand Up @@ -475,10 +494,18 @@ func runCnbBuild(config *cnbBuildOptions, cnbTelemetry *cnbBuildTelemetry, utils

config.mergeEnvVars(descriptor.EnvVars)

if (config.Buildpacks == nil || len(config.Buildpacks) == 0) && len(descriptor.Buildpacks) > 0 {
if len(config.Buildpacks) == 0 {
config.Buildpacks = descriptor.Buildpacks
}

if len(config.PreBuildpacks) == 0 {
config.PreBuildpacks = descriptor.PreBuildpacks
}

if len(config.PostBuildpacks) == 0 {
config.PostBuildpacks = descriptor.PostBuildpacks
}

if descriptor.Exclude != nil {
exclude = descriptor.Exclude
}
Expand Down Expand Up @@ -563,11 +590,13 @@ func runCnbBuild(config *cnbBuildOptions, cnbTelemetry *cnbBuildTelemetry, utils
metadata.WriteProjectMetadata(GeneralConfig.EnvRootPath, utils)

var buildpacksPath = "/cnb/buildpacks"
var orderPath = "/cnb/order.toml"
var orderPath = cnbutils.DefaultOrderPath

if config.Buildpacks != nil && len(config.Buildpacks) > 0 {
if len(config.Buildpacks) > 0 || len(config.PreBuildpacks) > 0 || len(config.PostBuildpacks) > 0 {
log.Entry().Infof("Setting custom buildpacks: '%v'", config.Buildpacks)
buildpacksPath, orderPath, err = setCustomBuildpacks(config.Buildpacks, config.DockerConfigJSON, utils)
log.Entry().Infof("Pre-buildpacks: '%v'", config.PreBuildpacks)
log.Entry().Infof("Post-buildpacks: '%v'", config.PostBuildpacks)
buildpacksPath, orderPath, err = setCustomBuildpacks(config.Buildpacks, config.PreBuildpacks, config.PostBuildpacks, config.DockerConfigJSON, utils)
defer func() { _ = utils.RemoveAll(buildpacksPath) }()
defer func() { _ = utils.RemoveAll(orderPath) }()
if err != nil {
Expand Down
34 changes: 33 additions & 1 deletion cmd/cnbBuild_generated.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit fcb8de9

Please sign in to comment.