Repository navigation
chore(deps): update IoM-go for session pagination and artifact replay #151
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: ci | |
| on: | |
| push: | |
| branches: [dev] | |
| pull_request: | |
| branches: [dev] | |
| workflow_dispatch: | |
| jobs: | |
| unit: | |
| runs-on: ubuntu-22.04 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| with: | |
| submodules: recursive | |
| - name: Set up Go | |
| uses: actions/setup-go@v5 | |
| with: | |
| go-version: "1.25.0" | |
| cache: false | |
| - name: Show Go version | |
| run: go version | |
| - name: Verify Go module files | |
| run: | | |
| go mod tidy | |
| git diff --exit-code -- go.mod go.sum | |
| - name: Install embedded build assets | |
| run: go run ./scripts/pre_install.go | |
| - name: Go vet | |
| run: go vet ./... | |
| - name: Go test | |
| run: go test ./... -count=1 -timeout 300s | |
| - name: Go build | |
| run: go build ./... | |
| env: | |
| CGO_ENABLED: 0 | |
| race: | |
| runs-on: ubuntu-22.04 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| with: | |
| submodules: recursive | |
| - name: Set up Go | |
| uses: actions/setup-go@v5 | |
| with: | |
| go-version: "1.25.0" | |
| cache: false | |
| - name: Show Go version | |
| run: go version | |
| - name: Verify Go module files | |
| run: | | |
| go mod tidy | |
| git diff --exit-code -- go.mod go.sum | |
| - name: Install embedded build assets | |
| run: go run ./scripts/pre_install.go | |
| - name: Race detection — client, core, parser, RPC, listener, stream | |
| run: >- | |
| go test -race -count=1 -timeout 300s | |
| ./client/core/... | |
| ./server/internal/core | |
| ./server/internal/parser/... | |
| ./server/internal/stream | |
| ./server/listener | |
| ./server/rpc | |
| - name: Parser fuzz smoke tests | |
| run: | | |
| go test ./server/internal/parser/malefic -run=^$ -fuzz=^FuzzMaleficParserReadHeader$ -fuzztime=5s | |
| go test ./server/internal/parser/malefic -run=^$ -fuzz=^FuzzMaleficParserParse$ -fuzztime=5s | |
| mock_implant: | |
| runs-on: ubuntu-22.04 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| with: | |
| submodules: recursive | |
| - name: Set up Go | |
| uses: actions/setup-go@v5 | |
| with: | |
| go-version: "1.25.0" | |
| cache: false | |
| - name: Show Go version | |
| run: go version | |
| - name: Verify Go module files | |
| run: | | |
| go mod tidy | |
| git diff --exit-code -- go.mod go.sum | |
| - name: Install embedded build assets | |
| run: go run ./scripts/pre_install.go | |
| - name: Discover mock implant packages | |
| shell: bash | |
| run: echo "MOCKIMPLANT_PACKAGES=$(go run ./scripts/testmatrix -layer mockimplant)" >> "$GITHUB_ENV" | |
| - name: Show mock implant package selection | |
| run: echo "$MOCKIMPLANT_PACKAGES" | |
| - name: Mock implant E2E tests | |
| run: go test -tags=mockimplant $MOCKIMPLANT_PACKAGES -count=1 -timeout 300s | |
| integration: | |
| runs-on: ubuntu-22.04 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| with: | |
| submodules: recursive | |
| - name: Set up Go | |
| uses: actions/setup-go@v5 | |
| with: | |
| go-version: "1.25.0" | |
| cache: false | |
| - name: Show Go version | |
| run: go version | |
| - name: Verify Go module files | |
| run: | | |
| go mod tidy | |
| git diff --exit-code -- go.mod go.sum | |
| - name: Install embedded build assets | |
| run: go run ./scripts/pre_install.go | |
| - name: Discover integration packages | |
| shell: bash | |
| run: echo "INTEGRATION_PACKAGES=$(go run ./scripts/testmatrix -layer integration)" >> "$GITHUB_ENV" | |
| - name: Show integration package selection | |
| run: echo "$INTEGRATION_PACKAGES" | |
| - name: Client/Server integration tests | |
| run: go test -tags=integration $INTEGRATION_PACKAGES -count=1 -timeout 300s |