Skip to content

deps(go)(deps): bump golang.org/x/crypto from 0.23.0 to 0.45.0 #11

deps(go)(deps): bump golang.org/x/crypto from 0.23.0 to 0.45.0

deps(go)(deps): bump golang.org/x/crypto from 0.23.0 to 0.45.0 #11

Workflow file for this run

name: ReadSync CI
on:
push:
branches: [main, "phase*"]
pull_request:
branches: [main]
permissions:
contents: read
concurrency:
group: "ci-${{ github.ref }}"
cancel-in-progress: true
jobs:
# ─── Phase 0 tools ────────────────────────────────────────────────────────
tools:
name: Phase 0 tools
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: "1.22"
cache: false
- name: Vet Phase 0 tools (CGO disabled, pure Go)
env:
CGO_ENABLED: "0"
run: |
(cd tools/koreader-sim && go vet ./...)
(cd tools/moon-fixture-recorder && go vet ./...)
(cd tools/winsvc-spike && go vet ./...)
(cd tools/generate-fixtures && go vet ./...)
# ─── Phase 1 main module ──────────────────────────────────────────────────
unit-tests:
name: Phase 1 unit tests (no CGO)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: "1.22"
- name: Download dependencies
run: go mod tidy && go mod download
- name: Run pure unit tests
# resolver, conflicts, logging don't need sqlite3/CGO
env:
CGO_ENABLED: "0"
run: |
go test -v -count=1 -timeout 30s \
./internal/resolver/... \
./internal/conflicts/... \
./internal/logging/...
integration-tests:
name: Phase 1 integration tests (CGO + SQLite)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: "1.22"
- name: Install GCC (for go-sqlite3 CGO)
run: sudo apt-get install -y gcc
- name: Download dependencies
run: go mod tidy && go mod download
- name: Run all tests
env:
CGO_ENABLED: "1"
run: go test -v -count=1 -timeout 60s ./...
build:
name: Build Windows binaries (cross-compile)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: "1.22"
- name: Install Windows cross-compile toolchain
run: sudo apt-get install -y gcc-mingw-w64-x86-64
- name: Download dependencies
run: go mod tidy && go mod download
- name: Build readsync-service.exe
env:
CGO_ENABLED: "1"
GOOS: windows
GOARCH: amd64
CC: x86_64-w64-mingw32-gcc
run: go build -v -o bin/readsync-service.exe ./cmd/readsync-service/
- name: Build readsyncctl.exe
env:
CGO_ENABLED: "1"
GOOS: windows
GOARCH: amd64
CC: x86_64-w64-mingw32-gcc
run: go build -v -o bin/readsyncctl.exe ./cmd/readsyncctl/
- name: Build readsync-tray.exe
env:
CGO_ENABLED: "1"
GOOS: windows
GOARCH: amd64
CC: x86_64-w64-mingw32-gcc
run: go build -v -trimpath -ldflags="-H windowsgui" -o bin/readsync-tray.exe ./cmd/readsync-tray/
- uses: actions/upload-artifact@v4
with:
name: windows-binaries
retention-days: 14
path: bin/*.exe
# ─── Phase 7 QA & Hardening ─────────────────────────────────────────────────
phase7-unit:
name: Phase 7 unit tests (no CGO)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: "1.22"
- name: Download dependencies
run: go mod tidy && go mod download
- name: Run Phase 7 unit tests
env:
CGO_ENABLED: "0"
run: |
go test -v -count=1 -timeout 60s \
./internal/resolver/... \
./internal/conflicts/... \
./internal/logging/... \
./internal/outbox/... \
./internal/adapters/moon/... \
./internal/setup/... \
./internal/repair/... \
./internal/secrets/... \
./internal/api/... \
./cmd/readsync-tray/... \
./internal/adapters/calibre/opf/... \
./internal/adapters/koreader/codec/...
phase7-security:
name: Phase 7 security tests (no CGO)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: "1.22"
- name: Download dependencies
run: go mod tidy && go mod download
- name: Run security tests
env:
CGO_ENABLED: "0"
run: go test -v -count=1 -timeout 30s ./tests/security/...
phase7-integration:
name: Phase 7 integration tests (CGO)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: "1.22"
- name: Install GCC
run: sudo apt-get install -y gcc
- name: Download dependencies
run: go mod tidy && go mod download
- name: Run integration + calibre + koreader tests
env:
CGO_ENABLED: "1"
run: |
go test -v -count=1 -timeout 60s ./tests/integration/...
go test -v -count=1 -timeout 30s ./internal/adapters/calibre/...
go test -v -count=1 -timeout 30s ./internal/adapters/koreader/...