Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

go-algorand 3.17.0-stable Release PR #5633

Merged
merged 114 commits into from
Aug 4, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
114 commits
Select commit Hold shift + click to select a range
8d73f00
test: skip flaky test `TestVotersReloadFromDiskPassRecoveryPeriod` (#…
ahangsu May 31, 2023
4106d22
AVM: Increase coverage by deleting a dead function and adding limit t…
jannotti May 31, 2023
25eb57c
Testing: Get rapid into the codebase (#5437)
jannotti Jun 1, 2023
6e245e7
lint: enable govet shadow linter and resolve linter warnings (#5261)
cce Jun 1, 2023
bad81ee
Algod: Simulation PC exposure for App approval/clear-state transactio…
ahangsu Jun 1, 2023
fd946dd
tools: txn replayer (#5420)
algorandskiy Jun 2, 2023
21dd74a
Algod: Add README file to state proof package (#5386)
id-ms Jun 2, 2023
76942c4
kv: add StorageEngine config
icorderi Jun 2, 2023
e249905
build: fix shadow linter in debug tools (#5442)
algorandskiy Jun 2, 2023
eac2c4f
Bookkeeping: improve block documentation since no-low-resources (#5383)
bbroder-algo Jun 2, 2023
3cbb422
config: make Tx dedupe cache maxSize configurable (#5419)
iansuvak Jun 2, 2023
7d8525e
cleanup: remove redundant method LookupAccountDataByAddress (#5216)
icorderi Jun 2, 2023
f66a404
sortition: use external sortition package (#5429)
cce Jun 2, 2023
490fd3b
AVM: Some error cleanup, and added coverage (#5441)
jannotti Jun 2, 2023
45cf9ab
lint: enable staticcheck for test code and fix issues (#5401)
cce Jun 3, 2023
47dec14
config: let go-generate to produce config-vXX.json files (#5446)
algorandskiy Jun 3, 2023
5faa4d0
typo: Fix typo in blockService_test.go (#5448)
eltociear Jun 3, 2023
913478a
block rpc: Memory counter for http block requests (#5428)
algonautshant Jun 5, 2023
4b70342
tools: EvalDelta and ConsensusParams x-repo type checks (#5381)
tzaffi Jun 5, 2023
1994341
api: Fix errFailedRetrievingStateDelta response. (#5452)
winder Jun 5, 2023
6b712a1
CI: don't use deprecated set-output in github actions (#5453)
tzaffi Jun 6, 2023
1230e9a
tools: bugfix block-generator to handle conduit's Init block requests…
tzaffi Jun 7, 2023
9f8cc8d
Algod: Leverage 2 SRV record providers for resolving relay addresses …
gmalouf Jun 7, 2023
3fbc4b6
netgoal: fix large db generation (#5445)
AlgoAxel Jun 7, 2023
78b0a81
build: remove boost dependency and internal sortition package (#5459)
cce Jun 8, 2023
fd60def
build: update falcon to v0.1.0 for new CFLAGS (#5460)
cce Jun 8, 2023
d5593a4
network: peer selector expansion and PeersPhonebookArchivalNodes (#5385)
algonautshant Jun 8, 2023
5ff0c22
tools: prepare block-generator for configuring apps (#5443)
tzaffi Jun 9, 2023
8ab4aad
genesis: add GenesisAccountData type for use in GenesisAllocation (#5…
cce Jun 13, 2023
9a644f6
AVM: proper cross product check for app put and del (#5467)
jannotti Jun 14, 2023
7b69c1b
flake: TestLedgerContinuesOnVotersCallbackFailure (#5454)
tzaffi Jun 14, 2023
79697d5
metrics: Add LedgerDBRound gauge (#5456)
cce Jun 14, 2023
9aee021
Build: Golang 1.20 upgrade. (#5462)
gmalouf Jun 15, 2023
4d6e50d
tools: block-generator applications. Part 1: create (#5450)
tzaffi Jun 15, 2023
96c9845
cmd/updater: add install directory to logging (#5466)
bbroder-algo Jun 15, 2023
05f1c72
encoding: Update go-codec version. (#5471)
winder Jun 16, 2023
2eb239b
Chore: Use strings.Cut for clarity (#5474)
jannotti Jun 16, 2023
07f9431
network: improve MsgOfInterest message handling (#5476)
cce Jun 16, 2023
ad03111
ledger: refactor store module interfaces before kv impl merge (#5451)
icorderi Jun 16, 2023
ae02370
tools: replace upload_metrics (#5470)
shiqizng Jun 16, 2023
b26c355
Merge remote-tracking branch 'origin/rel/stable' into relstable3.16.2…
Algo-devops-service Jun 20, 2023
9d425e3
Bump Version, Remove buildnumber.dat and genesistimestamp.dat files.
Algo-devops-service Jun 20, 2023
f83a656
network: discard unrequested or stale block messages (#5431)
iansuvak Jun 20, 2023
0824e4a
Build: Disable goexperiments in our builds due to issue present in Go…
gmalouf Jun 21, 2023
5f496cf
cleanup: remove indexer v1 from codebase (#5477)
gmalouf Jun 21, 2023
5d65abf
Merge pull request #5482 from Algo-devops-service/relstable3.16.2-rem…
algojohnlee Jun 21, 2023
b06de44
Build: Split nightly job into its own workflow. Remove ARM64 platform…
gmalouf Jun 21, 2023
227df93
api: Disable body limit middleware for admin endpoints. (#5486)
winder Jun 22, 2023
7a282c8
netdeploy: Add AdminAPIToken to network templates (#5473)
algorandskiy Jun 22, 2023
f5ad6a5
tests: flaky tests fixes (#5487)
algorandskiy Jun 22, 2023
21525f6
CI: Don't run tests during benchmark (#5491)
jasonpaulos Jun 22, 2023
91185ae
Chore: Use exp/slices and exp/maps to simplify some code (#5479)
jannotti Jun 22, 2023
f514d82
tests: fix flaky ledger stateproof and rpcs tests (#5494)
algorandskiy Jun 23, 2023
c547097
Chore: more deadcode (#5495)
jannotti Jun 23, 2023
f56b9bd
algocfg: Add EnableTxnEvalTracer to algocfg development profile. (#5481)
winder Jun 23, 2023
c223dbc
network: Limit message length based on Tag (#5388)
iansuvak Jun 23, 2023
e96d104
catchup: Add HEAD request to catchpoint service start (#5393)
Eric-Warehime Jun 24, 2023
68a4aba
Chore: Use generics to simplify some code in v2 (#5497)
ahangsu Jun 24, 2023
4f42233
Merge remote-tracking branch 'upstream/rel/stable' into onetechnical/…
onetechnical Jun 26, 2023
970d2a1
Fix: goal clerk rawsend print pending round rather than ptr to round …
ahangsu Jun 26, 2023
8dba54b
Merge pull request #5500 from onetechnical/onetechnical/relstable3.16…
algojohnlee Jun 26, 2023
df22f75
Chore: apply `golang.org/x/exp/constraints` to `overflow.go` (#5501)
ahangsu Jun 26, 2023
6d7913c
algocfg: Remove block validation override from participation profile.…
winder Jun 27, 2023
068b375
config: update MaxCatchpointDownloadDuration to 12h (#5503)
cce Jun 27, 2023
74b5f19
tools: block generator apps. Part 2: boxes (#5478)
tzaffi Jun 27, 2023
22e0e09
goal: account info with deleted asset suppress error and better outpu…
ahangsu Jun 28, 2023
533507a
tests: Fix catchpoint catchup tests to use relay for catchup (#5507)
Eric-Warehime Jun 28, 2023
68ebeb5
docker: fix slow docker container start up (#5513)
shiqizng Jun 28, 2023
11a180f
API: Allow DELETE calls (#5515)
AustP Jun 29, 2023
06fedda
follower: Use Buffered syncNow channel to correctly trigger sync in p…
algochoi Jun 29, 2023
0bc522d
network:ws block byte limiter (#5472)
iansuvak Jun 29, 2023
5ed50c4
tools: block generator inner transactions (#5506)
tzaffi Jun 30, 2023
dcafb65
tests: fix rawsend.sh nightly test failure (#5519)
ahangsu Jun 30, 2023
2f38415
docker: Start kmd in the background. (#5514)
winder Jun 30, 2023
83aee2e
bugfix: ensure blockservice callbacks are not nil (#5518)
iansuvak Jun 30, 2023
32466b9
tests: fix TestLedgerReloadStateProofVerificationTracker (#5520)
algorandskiy Jun 30, 2023
8c52ed0
fix: remove unnecessary bash scripts (#5524)
kehiy Jul 4, 2023
f54e7a7
tests: make TestSendMessageCallbacks deterministic (#5523)
iansuvak Jul 4, 2023
55bfa51
tests: reenable TestVotersReloadFromDiskPassRecoveryPeriod (#5496)
algorandskiy Jul 5, 2023
ec9e662
tracer: Default to ledger tracer when starting new evaluator (#5521)
Eric-Warehime Jul 5, 2023
cece133
docker: Additional private network options and container tweaks. (#5525)
winder Jul 6, 2023
3e80027
Chore: Small cleanups for clarity (#5526)
jannotti Jul 6, 2023
e215f6d
block-generator: conduit performance benchmark scenarios. (#5532)
winder Jul 8, 2023
9292c50
Chore: remove a redundant argument to maintain single source of truth…
jannotti Jul 10, 2023
a1569e5
ledger: fix catchpoint pending hashes locking (#5534)
icorderi Jul 10, 2023
217f791
Runtime: Add delete-if-exists check for the no longer used indexer.sq…
gmalouf Jul 10, 2023
4251297
test: Replace timer with counter loop in TestNodeTxHandlerRestart (#5…
algonautshant Jul 10, 2023
924087f
CICD: Update docker containers to newer versions (#5529)
onetechnical Jul 11, 2023
c38ff93
Update the Version, BuildNumber, genesistimestamp.data
Algo-devops-service Jul 11, 2023
c6f3769
Merge pull request #5541 from Algo-devops-service/relbeta3.17.0
algojohnlee Jul 11, 2023
fa0b354
tests: fix coder tester for TxType bound (#5536)
algorandskiy Jul 11, 2023
e21b905
CICD: Fix debian package error (#5552)
onetechnical Jul 11, 2023
80d0226
catchup: Catchup variable reuse (#5551)
Eric-Warehime Jul 12, 2023
aeef625
Algod: Simulate endpoint stack-change exposure (#5440)
ahangsu Jul 12, 2023
8db3d7a
CICD: Update ubuntu circleci image and orbs (#5564)
algobarb Jul 13, 2023
d316914
perf tests: use metrics for memory usage charts (#5565)
algorandskiy Jul 13, 2023
18a33c9
CICD: downgrade ubuntu to 20.04 and ensure ARM64 binaries are built s…
onetechnical Jul 14, 2023
279605a
docs: Fix broken markdown in follower documentation. (#5585)
winder Jul 20, 2023
be237d6
Algod: Simulate endpoint scratch-change exposure (#5563)
ahangsu Jul 20, 2023
bc9f126
tools: let catchpointdump to calculate and print data hashes (#5584)
algorandskiy Jul 20, 2023
0e0b26d
ledger: use single SP verification hash/data query for catchpoint tra…
cce Jul 20, 2023
17d4ebf
goal: support simulate scratch in exec trace (#5589)
ahangsu Jul 20, 2023
548399e
CircleCI: Update macos xcode versions (#5590)
algobarb Jul 20, 2023
1a46ceb
cli: clarify program source flag description (#5571)
kehiy Jul 21, 2023
4a5095e
chore: use string builder instead of string concatenation in catchup …
kehiy Jul 21, 2023
fbfbea1
build: remove sqlite from release configurations (#5562)
cce Jul 21, 2023
b4f6b1f
tools: Reorganize block generator scripts. (#5582)
winder Jul 21, 2023
0c6a328
catchpoint: use read connection for data retrieval for spver hash cal…
cce Jul 21, 2023
197bfb6
ledger: move MakeCatchpointReader back to the Reader interface (#5583)
icorderi Jul 21, 2023
8f4f71b
Merge branch 'rel/beta' into onetechnical/relbeta-remerge
onetechnical Jul 24, 2023
2258edd
Remove buildnumber.dat and genesistimestamp.dat files
onetechnical Jul 24, 2023
1d1fe0f
Merge pull request #5600 from onetechnical/onetechnical/relbeta-remerge
algojohnlee Jul 24, 2023
fbdcd05
Update the Version, BuildNumber, genesistimestamp.data
Algo-devops-service Jul 24, 2023
a0e31a7
Merge pull request #5601 from Algo-devops-service/relbeta3.17.0
algojohnlee Jul 25, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
133 changes: 65 additions & 68 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,14 @@
version: 2.1

orbs:
win: circleci/windows@2.3.0
go: circleci/[email protected].0
slack: circleci/slack@4.10.1
win: circleci/windows@5.0.0
go: circleci/[email protected].3
slack: circleci/slack@4.12.5

parameters:
ubuntu_image:
type: string
default: "ubuntu-2004:202104-01"
default: "ubuntu-2004:2023.04.2"
build_dir:
type: string
default: "/opt/cibuild"
Expand Down Expand Up @@ -47,19 +47,20 @@ executors:
resource_class: arm.large
mac_amd64_medium:
macos:
xcode: 13.2.1
resource_class: medium
xcode: 14.2.0
resource_class: macos.x86.medium.gen2
environment:
HOMEBREW_NO_AUTO_UPDATE: "true"
mac_amd64_large:
macos:
xcode: 13.2.1
resource_class: large
xcode: 14.2.0
# Since they removed the large class for amd64, we will use medium here too.
resource_class: macos.x86.medium.gen2
environment:
HOMEBREW_NO_AUTO_UPDATE: "true"
mac_arm64: &executor-mac-arm64
machine: true
resource_class: algorand/macstadium-m1-macos11
resource_class: algorand/macstadium-m1
environment:
HOMEBREW_NO_AUTO_UPDATE: "true"
# these are required b/c jobs explicitly assign sizes to the executors
Expand All @@ -79,7 +80,7 @@ slack-fail-stop-step: &slack-fail-post-step
# ===== Workflow Definitions =====
workflows:
version: 2
"circleci_build_and_test":
nightly_build_and_test:
jobs:
- build_nightly:
name: << matrix.platform >>_build_nightly
Expand All @@ -94,19 +95,6 @@ workflows:
context: slack-secrets
<<: *slack-fail-post-step

- test:
name: << matrix.platform >>_test
matrix: &matrix-default
parameters:
platform: ["amd64", "arm64"]
filters: &filters-default
branches:
ignore:
- /rel\/.*/
- << pipeline.parameters.valid_nightly_branch >>
context: slack-secrets
<<: *slack-fail-post-step

- test_nightly:
name: << matrix.platform >>_test_nightly
matrix:
Expand All @@ -116,15 +104,6 @@ workflows:
context: slack-secrets
<<: *slack-fail-post-step

- integration:
name: << matrix.platform >>_integration
matrix:
<<: *matrix-default
filters:
<<: *filters-default
context: slack-secrets
<<: *slack-fail-post-step

- integration_nightly:
name: << matrix.platform >>_integration_nightly
matrix:
Expand All @@ -134,15 +113,6 @@ workflows:
context: slack-secrets
<<: *slack-fail-post-step

- e2e_expect:
name: << matrix.platform >>_e2e_expect
matrix:
<<: *matrix-default
filters:
<<: *filters-default
context: slack-secrets
<<: *slack-fail-post-step

- e2e_expect_nightly:
name: << matrix.platform >>_e2e_expect_nightly
matrix:
Expand All @@ -152,15 +122,6 @@ workflows:
context: slack-secrets
<<: *slack-fail-post-step

- e2e_subs:
name: << matrix.platform >>_e2e_subs
matrix:
<<: *matrix-default
filters:
<<: *filters-default
context: slack-secrets
<<: *slack-fail-post-step

- e2e_subs_nightly:
name: << matrix.platform >>_e2e_subs_nightly
matrix:
Expand All @@ -172,17 +133,6 @@ workflows:
- aws-secrets
<<: *slack-fail-post-step

- tests_verification_job:
name: << matrix.platform >>_<< matrix.job_type >>_verification
matrix:
parameters:
platform: ["amd64", "arm64"]
job_type: ["test", "integration", "e2e_expect"]
requires:
- << matrix.platform >>_<< matrix.job_type >>
context: slack-secrets
<<: *slack-fail-post-step

- tests_verification_job_nightly:
name: << matrix.platform >>_<< matrix.job_type >>_verification
matrix:
Expand All @@ -203,17 +153,63 @@ workflows:
- << matrix.platform >>_integration_nightly_verification
- << matrix.platform >>_e2e_expect_nightly_verification
- << matrix.platform >>_e2e_subs_nightly
filters:
branches:
only:
- /rel\/.*/
- << pipeline.parameters.valid_nightly_branch >>
context:
- slack-secrets
- aws-secrets
<<: *slack-fail-post-step

#- windows_x64_build
"circleci_build_and_test":
jobs:
- test:
name: << matrix.platform >>_test
matrix: &matrix-default
parameters:
platform: ["amd64"]
filters: &filters-default
branches:
ignore:
- /rel\/.*/
- << pipeline.parameters.valid_nightly_branch >>
context: slack-secrets
<<: *slack-fail-post-step

- integration:
name: << matrix.platform >>_integration
matrix:
<<: *matrix-default
filters:
<<: *filters-default
context: slack-secrets
<<: *slack-fail-post-step

- e2e_expect:
name: << matrix.platform >>_e2e_expect
matrix:
<<: *matrix-default
filters:
<<: *filters-default
context: slack-secrets
<<: *slack-fail-post-step

- e2e_subs:
name: << matrix.platform >>_e2e_subs
matrix:
<<: *matrix-default
filters:
<<: *filters-default
context: slack-secrets
<<: *slack-fail-post-step

- tests_verification_job:
name: << matrix.platform >>_<< matrix.job_type >>_verification
matrix:
parameters:
platform: ["amd64"]
job_type: ["test", "integration", "e2e_expect"]
requires:
- << matrix.platform >>_<< matrix.job_type >>
context: slack-secrets
<<: *slack-fail-post-step

# ===== Job Definitions =====
jobs:
Expand Down Expand Up @@ -461,7 +457,7 @@ commands:
shell: bash.exe
command: |
choco install -y msys2 pacman make wget --force
choco install -y golang --version=1.17.13 --force
choco install -y golang --version=1.20.5 --force
choco install -y python3 --version=3.7.3 --force
export msys2='cmd //C RefreshEnv.cmd '
export msys2+='& set MSYS=winsymlinks:nativestrict '
Expand Down Expand Up @@ -606,6 +602,7 @@ commands:
export PACKAGE_NAMES=$(echo $PACKAGES | tr -d '\n')
export PARTITION_TOTAL=${CIRCLE_NODE_TOTAL}
export PARTITION_ID=${CIRCLE_NODE_INDEX}
export GOEXPERIMENT="none"
gotestsum --format standard-verbose --junitfile << parameters.result_path >>/<< parameters.result_subdir >>/${CIRCLE_NODE_INDEX}/results.xml --jsonfile << parameters.result_path >>/<< parameters.result_subdir >>/${CIRCLE_NODE_INDEX}/testresults.json -- --tags "sqlite_unlock_notify sqlite_omit_load_extension" << parameters.short_test_flag >> -race -timeout 1h -coverprofile=coverage.txt -covermode=atomic -p 1 $PACKAGE_NAMES
- store_artifacts:
path: << parameters.result_path >>
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/benchmarks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@ jobs:
name: Performance regression check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-go@v3
- uses: actions/checkout@v3.5.3
- uses: actions/setup-go@v4.0.1
with:
go-version-file: 'go.mod'
- run: go version
Expand All @@ -29,7 +29,7 @@ jobs:
# degradation, (2) `eval` degradation. (2) suggests a broader performance
# issue.
- name: Run benchmark
run: go test ./data/transactions/logic -bench 'BenchmarkUintMath' | tee benchmark_output.txt
run: go test ./data/transactions/logic -bench 'BenchmarkUintMath' -run=^$ | tee benchmark_output.txt
- name: Push benchmark result to gh-pages branch
if: github.event_name == 'push'
uses: benchmark-action/github-action-benchmark@v1
Expand Down
11 changes: 7 additions & 4 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,16 +17,19 @@ jobs:
update: true
path-type: inherit
- name: Check out code
uses: actions/checkout@v3
uses: actions/checkout@v3.5.3
with:
fetch-depth: 0
- name: Determine Go version
id: go_version
run: echo "GO_VERSION=$(./scripts/get_golang_version.sh)" >> $GITHUB_ENV
- name: Install golang
uses: actions/setup-go@v3
uses: actions/setup-go@v4.0.1
with:
go-version: "1.17.13"
go-version: ${{ env.GO_VERSION }}
- name: Restore libsodium from cache
id: cache-libsodium
uses: actions/cache@v3
uses: actions/cache@v3.3.1
with:
path: crypto/libs
key: libsodium-fork-v2-${{ runner.os }}-${{ hashFiles('crypto/libsodium-fork/**') }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/codegen_verification.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ jobs:
runs-on: ubuntu-20.04
steps:
- name: Check out code
uses: actions/checkout@v3
uses: actions/checkout@v3.5.3
with:
fetch-depth: 0
path: go-algorand
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/container.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v3
uses: actions/checkout@v3.5.3

- name: Generate Container Metadata
id: meta
Expand Down Expand Up @@ -59,7 +59,7 @@ jobs:
# if: github.ref == format('refs/heads/{0}', 'master')
# steps:
# - name: Checkout Code
# uses: actions/checkout@v3
# uses: actions/checkout@v3.5.3

# - name: Update DockerHub Repository Description
# uses: peter-evans/dockerhub-description@v3
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/pr-type-category.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
name: Check PR Category and Type
steps:
- name: Checking for correct number of required github pr labels
uses: mheap/github-action-required-labels@v2
uses: mheap/github-action-required-labels@v5
with:
mode: exactly
count: 1
Expand Down
25 changes: 12 additions & 13 deletions .github/workflows/reviewdog.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,19 +10,17 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Check out code into the Go module directory
uses: actions/checkout@v3
uses: actions/checkout@v3.5.3
with:
fetch-depth: 0 # required for new-from-rev option in .golangci.yml
- name: Install libraries
run: sudo apt-get -y -q install libboost-math-dev
# move go out of the way temporarily to avoid "go list ./..." from installing modules
- name: Make libsodium.a
run: sudo mv /usr/bin/go /usr/bin/go.bak && make crypto/libs/linux/amd64/lib/libsodium.a && sudo mv /usr/bin/go.bak /usr/bin/go
- name: reviewdog-golangci-lint
uses: reviewdog/action-golangci-lint@v2
uses: reviewdog/action-golangci-lint@v2.3.1
with:
go_version_file: go.mod
golangci_lint_version: "v1.47.3"
golangci_lint_version: "v1.53.2"
golangci_lint_flags: "-c .golangci.yml --allow-parallel-runners"
reporter: "github-pr-check"
tool_name: "Lint Errors"
Expand All @@ -34,37 +32,38 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Check out code into the Go module directory
uses: actions/checkout@v3
uses: actions/checkout@v3.5.3
with:
fetch-depth: 0 # required for new-from-rev option in .golangci.yml
- name: Install libraries
run: sudo apt-get -y -q install libboost-math-dev
# move go out of the way temporarily to avoid "go list ./..." from installing modules
- name: Make libsodium.a
run: sudo mv /usr/bin/go /usr/bin/go.bak && make crypto/libs/linux/amd64/lib/libsodium.a && sudo mv /usr/bin/go.bak /usr/bin/go
- name: Add bin to PATH
run: |
echo "$GITHUB_WORKSPACE/bin" >> $GITHUB_PATH
echo "$RUNNER_WORKSPACE/$(basename $GITHUB_REPOSITORY)/bin" >> $GITHUB_PATH
- name: Determine Go version
id: go_version
run: echo "GO_VERSION=$(./scripts/get_golang_version.sh)" >> $GITHUB_ENV
- name: Install specific golang
uses: actions/setup-go@v3
uses: actions/setup-go@v4.0.1
with:
go-version: '1.17.13'
go-version: ${{ env.GO_VERSION }}
- name: Create folders for golangci-lint
run: mkdir -p cicdtmp/golangci-lint
- name: Check if custom golangci-lint is already built
id: cache-golangci-lint
uses: actions/cache@v3
uses: actions/cache@v3.3.1
with:
path: cicdtmp/golangci-lint/golangci-lint-cgo
key: cicd-golangci-lint-cgo-v0.0.1
key: cicd-golangci-lint-cgo-v0.0.2

- name: Build custom golangci-lint with CGO_ENABLED
if: steps.cache-golangci-lint.outputs.cache-hit != 'true'
run: |
cd cicdtmp/golangci-lint
git clone https://github.com/golangci/golangci-lint.git .
git checkout tags/v1.47.3
git checkout tags/v1.53.2
CGO_ENABLED=true go build -trimpath -o golangci-lint-cgo ./cmd/golangci-lint
./golangci-lint-cgo --version
cd ../../
Expand Down
Loading