From 645a84b87b6185734ae452bb42c9cd982c97fe8e Mon Sep 17 00:00:00 2001 From: ale8k Date: Mon, 19 Aug 2024 13:39:50 +0100 Subject: [PATCH 01/18] golangci-lint --- .github/workflows/golangci-lint.yaml | 20 +++++++++++++++++++ ...lncheck.yaml => trivy-security-check.yaml} | 4 ++-- 2 files changed, 22 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/golangci-lint.yaml rename .github/workflows/{vulncheck.yaml => trivy-security-check.yaml} (87%) diff --git a/.github/workflows/golangci-lint.yaml b/.github/workflows/golangci-lint.yaml new file mode 100644 index 000000000..4f42aed5f --- /dev/null +++ b/.github/workflows/golangci-lint.yaml @@ -0,0 +1,20 @@ +name: golangci-lint +on: + pull_request: + +permissions: + contents: read + +jobs: + golangci: + name: Lint + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-go@v5 + with: + go-version: stable + - name: golangci-lint + uses: golangci/golangci-lint-action@v6 + with: + version: v1.59 \ No newline at end of file diff --git a/.github/workflows/vulncheck.yaml b/.github/workflows/trivy-security-check.yaml similarity index 87% rename from .github/workflows/vulncheck.yaml rename to .github/workflows/trivy-security-check.yaml index 14c1a7d41..4b6b70a50 100644 --- a/.github/workflows/vulncheck.yaml +++ b/.github/workflows/trivy-security-check.yaml @@ -1,4 +1,4 @@ -name: Security Check +name: Trivy Security Check on: schedule: @@ -16,5 +16,5 @@ jobs: uses: actions/setup-go@v5 with: go-version-file: go.mod - - name: Security checks + - name: Trivy Security checks uses: canonical/comsys-build-tools/.github/actions/security-scan@main From d055093fc030f502b2f0e5bca4061ccd94263818 Mon Sep 17 00:00:00 2001 From: ale8k Date: Mon, 19 Aug 2024 13:41:40 +0100 Subject: [PATCH 02/18] test linter with err --- cmd/jaas/cmd/addserviceaccount_test.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmd/jaas/cmd/addserviceaccount_test.go b/cmd/jaas/cmd/addserviceaccount_test.go index fa6966171..af21b96d9 100644 --- a/cmd/jaas/cmd/addserviceaccount_test.go +++ b/cmd/jaas/cmd/addserviceaccount_test.go @@ -45,5 +45,5 @@ func (s *addServiceAccountSuite) TestAddServiceAccount(c *gc.C) { // Check that re-running the command for a different user returns an error. bClientBob := jimmtest.NewUserSessionLogin(c, "bob") _, err = cmdtesting.RunCommand(c, cmd.NewAddServiceAccountCommandForTesting(s.ClientStore(), bClientBob), clientID) - c.Assert(err, gc.ErrorMatches, "service account already owned") + // c.Assert(err, gc.ErrorMatches, "service account already owned") } From 902012952c440adb027938a56bbea2a01d1bda6e Mon Sep 17 00:00:00 2001 From: ale8k Date: Mon, 19 Aug 2024 15:27:54 +0100 Subject: [PATCH 03/18] will this work? --- .github/workflows/golangci-lint.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/golangci-lint.yaml b/.github/workflows/golangci-lint.yaml index 4f42aed5f..5fca555ba 100644 --- a/.github/workflows/golangci-lint.yaml +++ b/.github/workflows/golangci-lint.yaml @@ -17,4 +17,5 @@ jobs: - name: golangci-lint uses: golangci/golangci-lint-action@v6 with: - version: v1.59 \ No newline at end of file + args: --timeout 30m + version: v1.59 From 367dc2baae7e78f85a6a3e92ba1740082a932bb7 Mon Sep 17 00:00:00 2001 From: ale8k Date: Mon, 19 Aug 2024 15:45:02 +0100 Subject: [PATCH 04/18] perhaps it is working? --- .github/workflows/golangci-lint.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/golangci-lint.yaml b/.github/workflows/golangci-lint.yaml index 5fca555ba..a031d9743 100644 --- a/.github/workflows/golangci-lint.yaml +++ b/.github/workflows/golangci-lint.yaml @@ -4,6 +4,7 @@ on: permissions: contents: read + checks: write # Optional: allow write access to checks to allow the action to annotate code in the PR. jobs: golangci: From c2d4e998fa8a6ca6fafe27e477152007aa83a16c Mon Sep 17 00:00:00 2001 From: ale8k Date: Mon, 19 Aug 2024 16:24:52 +0100 Subject: [PATCH 05/18] try a 5 min timeout with verbose... --- .github/workflows/golangci-lint.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/golangci-lint.yaml b/.github/workflows/golangci-lint.yaml index a031d9743..54002fbc9 100644 --- a/.github/workflows/golangci-lint.yaml +++ b/.github/workflows/golangci-lint.yaml @@ -18,5 +18,5 @@ jobs: - name: golangci-lint uses: golangci/golangci-lint-action@v6 with: - args: --timeout 30m + args: --timeout 5m --verbose version: v1.59 From 4c7b4079926140741decec965af1b6b4674691a8 Mon Sep 17 00:00:00 2001 From: ale8k Date: Mon, 19 Aug 2024 16:32:29 +0100 Subject: [PATCH 06/18] 10m no critic --- .github/workflows/golangci-lint.yaml | 2 +- .golangci.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/golangci-lint.yaml b/.github/workflows/golangci-lint.yaml index 54002fbc9..b418c7b1e 100644 --- a/.github/workflows/golangci-lint.yaml +++ b/.github/workflows/golangci-lint.yaml @@ -18,5 +18,5 @@ jobs: - name: golangci-lint uses: golangci/golangci-lint-action@v6 with: - args: --timeout 5m --verbose + args: --timeout 10m --verbose version: v1.59 diff --git a/.golangci.yaml b/.golangci.yaml index 74557b359..4836c566c 100644 --- a/.golangci.yaml +++ b/.golangci.yaml @@ -53,7 +53,7 @@ linters: # Style based linters - promlinter - - gocritic + # - gocritic # Test without critic - gocognit # To be fixed - goheader - importas From 515c53576a5a0a5ac8ed10386ead8905a48a8f3b Mon Sep 17 00:00:00 2001 From: ale8k Date: Tue, 20 Aug 2024 10:14:45 +0100 Subject: [PATCH 07/18] try a bump --- .github/workflows/golangci-lint.yaml | 4 ++-- .golangci.yaml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/golangci-lint.yaml b/.github/workflows/golangci-lint.yaml index b418c7b1e..7dbf9812a 100644 --- a/.github/workflows/golangci-lint.yaml +++ b/.github/workflows/golangci-lint.yaml @@ -18,5 +18,5 @@ jobs: - name: golangci-lint uses: golangci/golangci-lint-action@v6 with: - args: --timeout 10m --verbose - version: v1.59 + args: --timeout 50m --verbose + version: v1.60 diff --git a/.golangci.yaml b/.golangci.yaml index 4836c566c..48ba5d0cc 100644 --- a/.golangci.yaml +++ b/.golangci.yaml @@ -53,7 +53,7 @@ linters: # Style based linters - promlinter - # - gocritic # Test without critic + - gocritic # Test without critic - gocognit # To be fixed - goheader - importas From 28c48ff398fa88958c21d47a0b33ed64096d776d Mon Sep 17 00:00:00 2001 From: ale8k Date: Tue, 20 Aug 2024 10:57:45 +0100 Subject: [PATCH 08/18] wip --- .github/workflows/golangci-lint.yaml | 15 +++++++++++---- .golangci.yaml | 6 +++--- doc/golangci-lint.md | 2 +- 3 files changed, 15 insertions(+), 8 deletions(-) diff --git a/.github/workflows/golangci-lint.yaml b/.github/workflows/golangci-lint.yaml index 7dbf9812a..7b1fc8f93 100644 --- a/.github/workflows/golangci-lint.yaml +++ b/.github/workflows/golangci-lint.yaml @@ -11,12 +11,19 @@ jobs: name: Lint runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 - - uses: actions/setup-go@v5 + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup Go + uses: actions/setup-go@v5 with: go-version: stable - - name: golangci-lint + + - name: Tidy + run: go mod tidy + + - name: Run Golangci-lint uses: golangci/golangci-lint-action@v6 with: - args: --timeout 50m --verbose + args: --timeout 30m --verbose version: v1.60 diff --git a/.golangci.yaml b/.golangci.yaml index 48ba5d0cc..23d564fe2 100644 --- a/.golangci.yaml +++ b/.golangci.yaml @@ -9,7 +9,7 @@ run: tests: true allow-parallel-runners: false allow-serial-runners: false - # go: "1.17" # Do not set a go limit + # go: "1.23" issues: exclude-use-default: true @@ -53,8 +53,8 @@ linters: # Style based linters - promlinter - - gocritic # Test without critic - - gocognit # To be fixed + - gocritic + - gocognit - goheader - importas - gci diff --git a/doc/golangci-lint.md b/doc/golangci-lint.md index 743ca68ce..f72fc0591 100644 --- a/doc/golangci-lint.md +++ b/doc/golangci-lint.md @@ -7,4 +7,4 @@ In the .vscode folder of this repository you will find it is defined as the lint To install, please install the golangci-lint binary or install it via "go install". The version this was tested with is: -```go install github.com/golangci/golangci-lint/cmd/golangci-lint@v1.59.1``` \ No newline at end of file +```go install github.com/golangci/golangci-lint/cmd/golangci-lint@v1.60.1``` \ No newline at end of file From 732d08298ed639ad8c6bda5584ff33d04acab37d Mon Sep 17 00:00:00 2001 From: ale8k Date: Tue, 20 Aug 2024 11:27:31 +0100 Subject: [PATCH 09/18] reference field directly? --- cmd/jaas/cmd/addserviceaccount_test.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/cmd/jaas/cmd/addserviceaccount_test.go b/cmd/jaas/cmd/addserviceaccount_test.go index af21b96d9..70bf084ea 100644 --- a/cmd/jaas/cmd/addserviceaccount_test.go +++ b/cmd/jaas/cmd/addserviceaccount_test.go @@ -28,7 +28,7 @@ func (s *addServiceAccountSuite) TestAddServiceAccount(c *gc.C) { clientIDWithDomain := clientID + "@serviceaccount" // alice is superuser bClient := jimmtest.NewUserSessionLogin(c, "alice") - _, err := cmdtesting.RunCommand(c, cmd.NewAddServiceAccountCommandForTesting(s.ClientStore(), bClient), clientID) + _, err := cmdtesting.RunCommand(c, cmd.NewAddServiceAccountCommandForTesting(s.JimmCmdSuite.ClientStore(), bClient), clientID) c.Assert(err, gc.IsNil) tuple := openfga.Tuple{ Object: ofganames.ConvertTag(names.NewUserTag("alice@canonical.com")), @@ -40,10 +40,10 @@ func (s *addServiceAccountSuite) TestAddServiceAccount(c *gc.C) { c.Assert(err, gc.IsNil) c.Assert(ok, gc.Equals, true) // Check that re-running the command doesn't return an error for Alice. - _, err = cmdtesting.RunCommand(c, cmd.NewAddServiceAccountCommandForTesting(s.ClientStore(), bClient), clientID) + _, err = cmdtesting.RunCommand(c, cmd.NewAddServiceAccountCommandForTesting(s.JimmCmdSuite.ClientStore(), bClient), clientID) c.Assert(err, gc.IsNil) // Check that re-running the command for a different user returns an error. bClientBob := jimmtest.NewUserSessionLogin(c, "bob") - _, err = cmdtesting.RunCommand(c, cmd.NewAddServiceAccountCommandForTesting(s.ClientStore(), bClientBob), clientID) + _, err = cmdtesting.RunCommand(c, cmd.NewAddServiceAccountCommandForTesting(s.JimmCmdSuite.ClientStore(), bClientBob), clientID) // c.Assert(err, gc.ErrorMatches, "service account already owned") } From 4874526058e8f1d86cc2584eaf33fb9dcc804760 Mon Sep 17 00:00:00 2001 From: ale8k Date: Tue, 20 Aug 2024 13:16:58 +0100 Subject: [PATCH 10/18] tmate --- .github/workflows/golangci-lint.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/golangci-lint.yaml b/.github/workflows/golangci-lint.yaml index 7b1fc8f93..1c545627a 100644 --- a/.github/workflows/golangci-lint.yaml +++ b/.github/workflows/golangci-lint.yaml @@ -27,3 +27,8 @@ jobs: with: args: --timeout 30m --verbose version: v1.60 + + - name: Setup tmate session + if: ${{ failure() }} + uses: mxschmitt/action-tmate@v3 + From 28f2065aaaf97b6fb4f0ec2a877d9ce57c16fad2 Mon Sep 17 00:00:00 2001 From: ale8k Date: Tue, 20 Aug 2024 14:37:15 +0100 Subject: [PATCH 11/18] bump jimm? --- go.mod | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go.mod b/go.mod index 30ba26e37..88ac79fbe 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,6 @@ module github.com/canonical/jimm/v3 -go 1.22.5 +go 1.23.0 require ( github.com/canonical/go-dqlite v1.21.0 // indirect From 1c1a84478d27b786e1651564c0be1a60c95a9b0d Mon Sep 17 00:00:00 2001 From: ale8k Date: Tue, 20 Aug 2024 15:10:05 +0100 Subject: [PATCH 12/18] approle --- .github/workflows/golangci-lint.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/golangci-lint.yaml b/.github/workflows/golangci-lint.yaml index 1c545627a..4b0273ce3 100644 --- a/.github/workflows/golangci-lint.yaml +++ b/.github/workflows/golangci-lint.yaml @@ -19,8 +19,8 @@ jobs: with: go-version: stable - - name: Tidy - run: go mod tidy + - name: Touch approle + run: touch ./local/vault/approle.json - name: Run Golangci-lint uses: golangci/golangci-lint-action@v6 From 3223bb1ac268046ac38957c53ed9775d68aae28c Mon Sep 17 00:00:00 2001 From: ale8k Date: Wed, 21 Aug 2024 09:42:37 +0100 Subject: [PATCH 13/18] . --- .github/workflows/golangci-lint.yaml | 4 +--- cmd/jaas/cmd/addserviceaccount_test.go | 8 ++++---- go.mod | 2 +- 3 files changed, 6 insertions(+), 8 deletions(-) diff --git a/.github/workflows/golangci-lint.yaml b/.github/workflows/golangci-lint.yaml index 4b0273ce3..8cc2d049c 100644 --- a/.github/workflows/golangci-lint.yaml +++ b/.github/workflows/golangci-lint.yaml @@ -18,6 +18,7 @@ jobs: uses: actions/setup-go@v5 with: go-version: stable + cache: false - name: Touch approle run: touch ./local/vault/approle.json @@ -28,7 +29,4 @@ jobs: args: --timeout 30m --verbose version: v1.60 - - name: Setup tmate session - if: ${{ failure() }} - uses: mxschmitt/action-tmate@v3 diff --git a/cmd/jaas/cmd/addserviceaccount_test.go b/cmd/jaas/cmd/addserviceaccount_test.go index 70bf084ea..fa6966171 100644 --- a/cmd/jaas/cmd/addserviceaccount_test.go +++ b/cmd/jaas/cmd/addserviceaccount_test.go @@ -28,7 +28,7 @@ func (s *addServiceAccountSuite) TestAddServiceAccount(c *gc.C) { clientIDWithDomain := clientID + "@serviceaccount" // alice is superuser bClient := jimmtest.NewUserSessionLogin(c, "alice") - _, err := cmdtesting.RunCommand(c, cmd.NewAddServiceAccountCommandForTesting(s.JimmCmdSuite.ClientStore(), bClient), clientID) + _, err := cmdtesting.RunCommand(c, cmd.NewAddServiceAccountCommandForTesting(s.ClientStore(), bClient), clientID) c.Assert(err, gc.IsNil) tuple := openfga.Tuple{ Object: ofganames.ConvertTag(names.NewUserTag("alice@canonical.com")), @@ -40,10 +40,10 @@ func (s *addServiceAccountSuite) TestAddServiceAccount(c *gc.C) { c.Assert(err, gc.IsNil) c.Assert(ok, gc.Equals, true) // Check that re-running the command doesn't return an error for Alice. - _, err = cmdtesting.RunCommand(c, cmd.NewAddServiceAccountCommandForTesting(s.JimmCmdSuite.ClientStore(), bClient), clientID) + _, err = cmdtesting.RunCommand(c, cmd.NewAddServiceAccountCommandForTesting(s.ClientStore(), bClient), clientID) c.Assert(err, gc.IsNil) // Check that re-running the command for a different user returns an error. bClientBob := jimmtest.NewUserSessionLogin(c, "bob") - _, err = cmdtesting.RunCommand(c, cmd.NewAddServiceAccountCommandForTesting(s.JimmCmdSuite.ClientStore(), bClientBob), clientID) - // c.Assert(err, gc.ErrorMatches, "service account already owned") + _, err = cmdtesting.RunCommand(c, cmd.NewAddServiceAccountCommandForTesting(s.ClientStore(), bClientBob), clientID) + c.Assert(err, gc.ErrorMatches, "service account already owned") } diff --git a/go.mod b/go.mod index 88ac79fbe..30ba26e37 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,6 @@ module github.com/canonical/jimm/v3 -go 1.23.0 +go 1.22.5 require ( github.com/canonical/go-dqlite v1.21.0 // indirect From edfa401fbefd8920a3bccc715325794199387f30 Mon Sep 17 00:00:00 2001 From: ale8k Date: Wed, 21 Aug 2024 10:06:24 +0100 Subject: [PATCH 14/18] int overflows. --- internal/jimm/watcher.go | 1 + internal/jimmtest/env.go | 1 + internal/openfga/openfga.go | 1 + 3 files changed, 3 insertions(+) diff --git a/internal/jimm/watcher.go b/internal/jimm/watcher.go index 72e8ba25c..393dc74f3 100644 --- a/internal/jimm/watcher.go +++ b/internal/jimm/watcher.go @@ -472,6 +472,7 @@ func (w *Watcher) handleDelta(ctx context.Context, modelIDf func(string) *modelS var cores int64 machine := d.Entity.(*jujuparams.MachineInfo) if machine.HardwareCharacteristics != nil && machine.HardwareCharacteristics.CpuCores != nil { + //nolint:gosec // We expect cpu cores to fit into int64. cores = int64(*machine.HardwareCharacteristics.CpuCores) } sCores, ok := state.machines[eid.Id] diff --git a/internal/jimmtest/env.go b/internal/jimmtest/env.go index 863f94794..8126f65a1 100644 --- a/internal/jimmtest/env.go +++ b/internal/jimmtest/env.go @@ -459,6 +459,7 @@ func (m *Model) DBObject(c *qt.C, db db.Database) dbmodel.Model { m.env.Controller(m.Controller) migrationControllerID := sql.NullInt32{} if m.MigrationController != "" { + //nolint:gosec // I'd will fit. migrationControllerID.Int32 = int32(m.env.Controller(m.MigrationController).dbo.ID) migrationControllerID.Valid = true } diff --git a/internal/openfga/openfga.go b/internal/openfga/openfga.go index 23cc77208..103b8ee44 100644 --- a/internal/openfga/openfga.go +++ b/internal/openfga/openfga.go @@ -206,6 +206,7 @@ func (o *OFGAClient) removeTuples(ctx context.Context, tuple Tuple) (err error) for { // Since we're deleting the returned tuples, it's best to avoid pagination, // and fresh query for the relations. + //nolint:gosec // The page size will not exceed int32. tuples, ct, err := o.ReadRelatedObjects(ctx, tuple, int32(pageSize), "") if err != nil { return err From b8ffc227f3f87bd6f3aec26d7fba5369b96cf607 Mon Sep 17 00:00:00 2001 From: ale8k Date: Wed, 21 Aug 2024 10:21:17 +0100 Subject: [PATCH 15/18] rename --- .../{trivy-security-check.yaml => vulnerability-check.yaml} | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) rename .github/workflows/{trivy-security-check.yaml => vulnerability-check.yaml} (87%) diff --git a/.github/workflows/trivy-security-check.yaml b/.github/workflows/vulnerability-check.yaml similarity index 87% rename from .github/workflows/trivy-security-check.yaml rename to .github/workflows/vulnerability-check.yaml index 4b6b70a50..9deae64f4 100644 --- a/.github/workflows/trivy-security-check.yaml +++ b/.github/workflows/vulnerability-check.yaml @@ -1,4 +1,4 @@ -name: Trivy Security Check +name: Vulnerability Check on: schedule: @@ -16,5 +16,5 @@ jobs: uses: actions/setup-go@v5 with: go-version-file: go.mod - - name: Trivy Security checks + - name: Security scan uses: canonical/comsys-build-tools/.github/actions/security-scan@main From 765ce8e7df9918eb47b9b3bc4a5d150f274b7b6f Mon Sep 17 00:00:00 2001 From: ale8k Date: Wed, 21 Aug 2024 10:23:32 +0100 Subject: [PATCH 16/18] extra newline --- .github/workflows/golangci-lint.yaml | 1 - .golangci.yaml | 2 +- internal/jimmtest/env.go | 2 +- 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/golangci-lint.yaml b/.github/workflows/golangci-lint.yaml index 8cc2d049c..271f9c84e 100644 --- a/.github/workflows/golangci-lint.yaml +++ b/.github/workflows/golangci-lint.yaml @@ -29,4 +29,3 @@ jobs: args: --timeout 30m --verbose version: v1.60 - diff --git a/.golangci.yaml b/.golangci.yaml index 23d564fe2..bd973feb4 100644 --- a/.golangci.yaml +++ b/.golangci.yaml @@ -87,4 +87,4 @@ linters-settings: sections: - standard - default - - localmodule \ No newline at end of file + - localmodule diff --git a/internal/jimmtest/env.go b/internal/jimmtest/env.go index 8126f65a1..229ac7552 100644 --- a/internal/jimmtest/env.go +++ b/internal/jimmtest/env.go @@ -459,7 +459,7 @@ func (m *Model) DBObject(c *qt.C, db db.Database) dbmodel.Model { m.env.Controller(m.Controller) migrationControllerID := sql.NullInt32{} if m.MigrationController != "" { - //nolint:gosec // I'd will fit. + //nolint:gosec // Database IDs for tests will fit into int32. migrationControllerID.Int32 = int32(m.env.Controller(m.MigrationController).dbo.ID) migrationControllerID.Valid = true } From 3a22cf6124dddff4e19ade0595ef5342e5c2778b Mon Sep 17 00:00:00 2001 From: ale8k Date: Wed, 21 Aug 2024 10:28:49 +0100 Subject: [PATCH 17/18] add linting to make --- Makefile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 38cb491bc..66d291025 100644 --- a/Makefile +++ b/Makefile @@ -19,7 +19,10 @@ build: version/commit.txt version/version.txt build/server: version/commit.txt version/version.txt go build -tags version ./cmd/jimmsrv -check: version/commit.txt version/version.txt +lint: + golangci-lint run --timeout 5m + +check: version/commit.txt version/version.txt lint go test -timeout 30m $(PROJECT)/... -cover clean: From 0efb55198382765b466ccdc295e56d7475bb9499 Mon Sep 17 00:00:00 2001 From: ale8k Date: Wed, 21 Aug 2024 10:30:00 +0100 Subject: [PATCH 18/18] make target --- Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/Makefile b/Makefile index 66d291025..f923ee7d8 100644 --- a/Makefile +++ b/Makefile @@ -120,6 +120,7 @@ endef APT_BASED := $(shell command -v apt-get >/dev/null; echo $$?) sys-deps: ifeq ($(APT_BASED),0) + @$(call check_dep,golangci-lint,Missing Golangci-lint - install from https://golangci-lint.run/welcome/install/) @$(call check_dep,go,Missing Go - install from https://go.dev/doc/install or 'sudo snap install go --classic') @$(call check_dep,git,Missing Git - install with 'sudo apt install git') @$(call check_dep,gcc,Missing gcc - install with 'sudo apt install build-essential')