Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
19 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
## Goal
<!-- What does this PR accomplish? 1 sentence. -->

## Changes
-

## Testing
<!-- How did you verify it? -->

## Checklist
- [ ] Title is a clear sentence (≤ 70 chars)
- [ ] Commits are signed (`git log --show-signature`)
- [ ] `submissions/labN.md` updated
96 changes: 96 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
name: DevOps Intro Workflow

on:
push:
branches: [ main ]
paths:
- 'app/**'
- '.github/workflows/**'
pull_request:
branches: [ main ]
paths:
- 'app/**'
- '.github/workflows/**'

permissions:
contents: read

env:
GOFLAGS: -buildvcs=false

jobs:
vet:
runs-on: ubuntu-24.04
steps:
- name: Checkout repository
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 1

- name: Setup Go compiler
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version: '1.24'
cache: true
cache-dependency-path: app/go.sum

- name: Run go vet
run: go vet ./...
working-directory: app

test:
runs-on: ubuntu-24.04
strategy:
fail-fast: false
matrix:
go: ['1.23', '1.24']
steps:
- name: Checkout repository
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 1

- name: Setup Go compiler
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version: ${{ matrix.go }}
cache: true
cache-dependency-path: app/go.sum

- name: Run unit tests
run: go test -race -count=1 ./...
working-directory: app

lint:
runs-on: ubuntu-24.04
steps:
- name: Checkout repository
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 1

- name: Setup Go compiler
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version: '1.24'
cache: true
cache-dependency-path: app/go.sum

- name: Run golangci-lint
uses: golangci/golangci-lint-action@1481404843c368bc19ca9406f87d6e0fc97bdcfd # v7.0.0
with:
version: v2.5.0
working-directory: app

ci-ok:
if: always()
needs: [vet, test, lint]
runs-on: ubuntu-24.04
steps:
- name: Check status of dependent jobs
run: |
if ${{ contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled') }}; then
echo "One or more dependent jobs failed or were cancelled."
exit 1
fi
echo "All dependent jobs completed successfully."
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -61,3 +61,5 @@ Thumbs.db
# *.sbom.cdx.json, zap-*.html/json, trivy-*.txt (Lab 9 scan evidence)
# flake.nix, flake.lock (Lab 11)
# wasm/main.go, spin.toml, go.sum (Lab 12)
data/
app/data/
31 changes: 31 additions & 0 deletions evidence/lab3-run-baseline.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@

тЬУ feature/lab3 DevOps Intro Workflow HNS2112/DevOps-Intro#1 ┬╖ 30975260042
Triggered via pull_request about 1 hour ago

JOBS
тЬУ test in 28s (ID 92207831307)
тЬУ lint in 25s (ID 92207831316)
тЬУ vet in 23s (ID 92207831371)

ANNOTATIONS
! Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683, actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
test: .github#2

! Restore cache failed: Dependencies file is not found in /home/runner/work/DevOps-Intro/DevOps-Intro. Supported file pattern: go.sum
test: .github#19

! Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683, actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a, golangci/golangci-lint-action@1481404843c368bc19ca9406f87d6e0fc97bdcfd. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
lint: .github#2

! Restore cache failed: Dependencies file is not found in /home/runner/work/DevOps-Intro/DevOps-Intro. Supported file pattern: go.sum
lint: .github#19

! Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683, actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
vet: .github#2

! Restore cache failed: Dependencies file is not found in /home/runner/work/DevOps-Intro/DevOps-Intro. Supported file pattern: go.sum
vet: .github#19


For more information about a job, try: gh run view --job=<job-id>
View this run on GitHub: https://github.com/HNS2112/DevOps-Intro/actions/runs/30975260042
46 changes: 46 additions & 0 deletions evidence/lab3-run-matrix.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@

тЬУ feature/lab3 DevOps Intro Workflow HNS2112/DevOps-Intro#1 ┬╖ 30979866915
Triggered via pull_request about 8 minutes ago

JOBS
тЬУ vet (1.23) in 33s (ID 92221798058)
тЬУ test (1.23) in 36s (ID 92221798062)
тЬУ lint in 28s (ID 92221798075)
тЬУ test (1.24) in 30s (ID 92221798094)
тЬУ vet (1.24) in 23s (ID 92221798117)
тЬУ ci-ok in 5s (ID 92221920679)

ANNOTATIONS
! Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683, actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
vet (1.23): .github#2

! Restore cache failed: Some specified paths were not resolved, unable to cache dependencies.
vet (1.23): .github#27

! Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683, actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
test (1.23): .github#2

! Restore cache failed: Some specified paths were not resolved, unable to cache dependencies.
test (1.23): .github#27

! Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683, actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a, golangci/golangci-lint-action@1481404843c368bc19ca9406f87d6e0fc97bdcfd. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
lint: .github#2

! Restore cache failed: Some specified paths were not resolved, unable to cache dependencies.
lint: .github#20

! Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683, actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
test (1.24): .github#2

! Restore cache failed: Some specified paths were not resolved, unable to cache dependencies.
test (1.24): .github#20

! Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683, actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
vet (1.24): .github#2

! Restore cache failed: Some specified paths were not resolved, unable to cache dependencies.
vet (1.24): .github#20


For more information about a job, try: gh run view --job=<job-id>
View this run on GitHub: https://github.com/HNS2112/DevOps-Intro/actions/runs/30979866915
6 changes: 6 additions & 0 deletions evidence/lab3-toolchain.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@

vet (1.23) Setup Go compiler 2026-08-05T06:00:17.8727961Z go version go1.23.12 linux/amd64
vet (1.23) Setup Go compiler 2026-08-05T06:00:18.4785450Z GOTOOLCHAIN='auto'
vet (1.23) Run go vet 2026-08-05T06:00:18.5194361Z go: downloading go1.24.0 (linux/amd64)


Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added evidence/screenshots/lab3-branch-protection.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added evidence/screenshots/lab3-failed-check.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added evidence/screenshots/lab3-matrix-green.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added evidence/screenshots/lab3-merge-blocked.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added evidence/screenshots/lab3-path-filter.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading