Skip to content

fix(gmail): enforce per-account no-send guard before dry-run exit #2647

fix(gmail): enforce per-account no-send guard before dry-run exit

fix(gmail): enforce per-account no-send guard before dry-run exit #2647

Workflow file for this run

name: ci
on:
push:
pull_request:
concurrency:
group: ci-${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/setup-go@924ae3a1cded613372ab5595356fb5720e22ba16 # v6.5.0
with:
go-version-file: go.mod
cache: true
- uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
with:
path: .tools
key: ${{ runner.os }}-tools-${{ hashFiles('Makefile') }}
- name: Install tools
run: make tools
- name: Format check
run: make fmt-check
- name: Test
run: make test
- name: Lint
run: make lint
- name: Deadcode
run: make deadcode
- name: Docs check
run: make docs-check
worker:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: "24"
- name: Enable Corepack (pnpm)
run: |
corepack enable
corepack prepare pnpm@11.9.0 --activate
- name: Install dependencies
run: pnpm -C internal/tracking/worker install --frozen-lockfile
- name: Lint
run: pnpm -C internal/tracking/worker lint
- name: Build
run: pnpm -C internal/tracking/worker build
- name: Test
run: pnpm -C internal/tracking/worker test
windows:
runs-on: windows-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/setup-go@924ae3a1cded613372ab5595356fb5720e22ba16 # v6.5.0
with:
go-version-file: go.mod
cache: true
- uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
with:
path: .tools
key: ${{ runner.os }}-tools-${{ hashFiles('Makefile') }}
- name: Install tools
run: make tools
shell: bash
- name: Format check
run: make fmt-check
shell: bash
- name: Test
# Skip tests that depend on macOS Keychain / Linux keyring or Unix path semantics.
# These are covered by ubuntu-latest and macos-15 jobs.
# See https://github.com/openclaw/gogcli/issues/395
run: make test
shell: bash
env:
TEST_FLAGS: >-
-skip 'TestAuth|TestListClientCredentials|TestReadClientCredentials|TestConfigExists|TestExpandPath|TestResolveKeyringBackendInfo|TestLoadSecrets_LegacyFallback'
- name: Lint
run: make lint
shell: bash
- name: Build
run: go build ./cmd/gog
darwin-cgo-build:
runs-on: macos-15
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/setup-go@924ae3a1cded613372ab5595356fb5720e22ba16 # v6.5.0
with:
go-version-file: go.mod
cache: true
- name: Test
run: make test
- name: Build (Keychain / cgo)
run: CGO_ENABLED=1 go build ./cmd/gog