diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..ce44ad4 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,26 @@ +name: Build + +on: + pull_request: + branches: + - master + push: + branches: + - master + +jobs: + build: + name: Build Project + runs-on: ubuntu-latest + + steps: + - name: Checkout Code + uses: actions/checkout@v3 + + - name: Set up Go + uses: actions/setup-go@v4 + with: + go-version: 1.23 + + - name: Build Project + run: go build ./... diff --git a/.github/workflows/dependency-check.yml b/.github/workflows/dependency-check.yml new file mode 100644 index 0000000..fb4ad1f --- /dev/null +++ b/.github/workflows/dependency-check.yml @@ -0,0 +1,28 @@ +name: Dependency Check + +on: + pull_request: + branches: + - master + push: + branches: + - master + +jobs: + dependency_check: + name: Check for Dependency Vulnerabilities + runs-on: ubuntu-latest + + steps: + - name: Checkout Code + uses: actions/checkout@v3 + + - name: Set up Go + uses: actions/setup-go@v4 + with: + go-version: 1.23 + + - name: Check and Tidy Dependencies + run: | + go get -u -v + go mod tidy diff --git a/.github/workflows/go-test.yml b/.github/workflows/go-test.yml index 5feb40f..c912e5c 100644 --- a/.github/workflows/go-test.yml +++ b/.github/workflows/go-test.yml @@ -2,6 +2,9 @@ on: pull_request: branches: - master + push: + branches: + - master jobs: test: diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml new file mode 100644 index 0000000..c40c3a6 --- /dev/null +++ b/.github/workflows/lint.yml @@ -0,0 +1,30 @@ +name: Lint + +on: + pull_request: + branches: + - master + push: + branches: + - master + +jobs: + lint: + name: Lint Code + runs-on: ubuntu-latest + + steps: + - name: Checkout Code + uses: actions/checkout@v3 + + - name: Set up Go + uses: actions/setup-go@v4 + with: + go-version: 1.23 + + - name: Install golangci-lint + run: | + go install github.com/golangci/golangci-lint/cmd/golangci-lint@latest + + - name: Run golangci-lint + run: golangci-lint run diff --git a/.github/workflows/static-analysis.yml b/.github/workflows/static-analysis.yml new file mode 100644 index 0000000..48b5437 --- /dev/null +++ b/.github/workflows/static-analysis.yml @@ -0,0 +1,29 @@ +name: Static Analysis + +on: + pull_request: + branches: + - master + push: + branches: + - master + +jobs: + static_analysis: + name: Static Code Analysis + runs-on: ubuntu-latest + + steps: + - name: Checkout Code + uses: actions/checkout@v3 + + - name: Set up Go + uses: actions/setup-go@v4 + with: + go-version: 1.23 + + - name: Install staticcheck + run: go install honnef.co/go/tools/cmd/staticcheck@latest + + - name: Run staticcheck + run: staticcheck ./...