FIPS compliant v3.5.17-dd.3 build#10
Conversation
f82296c to
08ab516
Compare
| - "windows/arm64" | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - uses: actions/checkout@v4 |
There was a problem hiding this comment.
🟠 Code Vulnerability
Workflow depends on a GitHub actions pinned by tag instead of a hash. (...read more)
Pin GitHub Actions by commit hash to ensure supply chain security.
Using a branch (@main) or tag (@v1) allows for implicit updates, which can introduce unexpected or malicious changes. Instead, always pin actions to a full length commit SHA. You can find the commit SHA for the latest tag from the action’s repository and ensure frequent updates via auto-updaters such as dependabot. Include a comment with the corresponding full-length SemVer tag for clarity:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2| shell: bash | ||
| working-directory: release/ | ||
| run: ls . | grep -E '\.tar.gz$|\.zip$' | xargs shasum -a 256 > ./SHA256SUMS | ||
| - uses: actions/upload-artifact@v4 |
There was a problem hiding this comment.
🟠 Code Vulnerability
Workflow depends on a GitHub actions pinned by tag instead of a hash. (...read more)
Pin GitHub Actions by commit hash to ensure supply chain security.
Using a branch (@main) or tag (@v1) allows for implicit updates, which can introduce unexpected or malicious changes. Instead, always pin actions to a full length commit SHA. You can find the commit SHA for the latest tag from the action’s repository and ensure frequent updates via auto-updaters such as dependabot. Include a comment with the corresponding full-length SemVer tag for clarity:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2ef8ca58 to
3438b26
Compare
.github/workflows/dd-build.yaml
Outdated
| - name: Create output directory | ||
| run: mkdir -p _output/checksums | ||
| - name: Download all artifacts | ||
| uses: actions/download-artifact@v4 |
There was a problem hiding this comment.
🟠 Code Vulnerability
Workflow depends on a GitHub actions pinned by tag instead of a hash. (...read more)
Pin GitHub Actions by commit hash to ensure supply chain security.
Using a branch (@main) or tag (@v1) allows for implicit updates, which can introduce unexpected or malicious changes. Instead, always pin actions to a full length commit SHA. You can find the commit SHA for the latest tag from the action’s repository and ensure frequent updates via auto-updaters such as dependabot. Include a comment with the corresponding full-length SemVer tag for clarity:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.23438b26 to
57dc0c7
Compare
.github/workflows/dd-build.yaml
Outdated
| echo "ARTIFACT_NAME=etcd_output_amd64" >> $GITHUB_ENV | ||
| fi | ||
| - name: Download artifacts | ||
| uses: actions/download-artifact@v4 |
There was a problem hiding this comment.
🟠 Code Vulnerability
Workflow depends on a GitHub actions pinned by tag instead of a hash. (...read more)
Pin GitHub Actions by commit hash to ensure supply chain security.
Using a branch (@main) or tag (@v1) allows for implicit updates, which can introduce unexpected or malicious changes. Instead, always pin actions to a full length commit SHA. You can find the commit SHA for the latest tag from the action’s repository and ensure frequent updates via auto-updaters such as dependabot. Include a comment with the corresponding full-length SemVer tag for clarity:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2c84d409 to
f10fa56
Compare
Signed-off-by: joshjms <joshjms1607@gmail.com> change go directive to 1.23 Signed-off-by: joshjms <joshjms1607@gmail.com>
Signed-off-by: Ivan Valdes <ivan@vald.es>
6603caf to
f6f71cc
Compare
badouralix
left a comment
There was a problem hiding this comment.
Given we want to build one arch at a time, I don't think we have the choice but to fork scripts/build-binary into scripts/build-binary-single-target indeed
3947777 to
be103d1
Compare
1277868 to
0ba05b0
Compare
v3.5.17-dd.2 buildv3.5.17-dd.3 build
5528a4b to
d89cb6a
Compare
bbe15b8 to
32617d5
Compare
command: DRY_RUN=false TARGET_VERSION="v3.5.17-dd.3" ./scripts/release_mod.sh update_versions
32617d5 to
e2c2a0f
Compare
Signed-off-by: Benjamin Wang <benjamin.ahrtr@gmail.com>
Signed-off-by: Benjamin Wang <benjamin.ahrtr@gmail.com>
Signed-off-by: Ayaz Badouraly <ayaz.badouraly@datadoghq.com>
What's changing in
.github/workflows/dd-build.yamlbuildjob is split up intobuild-arm64andbuild-amd64CGO_ENABLED=1and I was having issues cross-compiling. Thebuild-arm64job runs on anarm64machine andbuild-amd64job runs on anamd64machine. I use a matrix strategy for both rather than hardcoding environment variables.etcd_output_arm64andetcd_output_amd64build-amd64andbuild-arm64Set artifact nameto set the name of the artifact to be downloaded properly inreleaseassets.releaseassets-->releaseassetsarmNew script
./scripts/build-binary-single-target./scripts/build-binaryetcdand creates a.tar.gzrelease artifact.TARGET_OSandTARGET_ARCHto build the binaryModifications to
build.shGO_EXPERIMENTincluded inGO_BUILD_ENVGOEXPERIMENT=boringcryptoexport GOEXPERIMENT=boringcrypto, but it didn't work (see 57dc0c7 and https://github.com/DataDog/etcd/actions/runs/13862426254/job/38793868704)Added
fips.gotoetcd,etcdctl,etcdutlmainpackagesDetails about cherry-picked commits:
1.23.7fixed thisscripts/build-binary-single-targetdoesn't run withGOLDFLAGSso we can inspect the symbols and ensure that the binary is fips compliant