전체 활용 사례

// 정기 자동화 — 저장소로 받기

감사 · 재실행용 Artifact 보존

PR 없이 GitHub Artifact 로 최대 90일 보존. 회계 시스템에 직접 import 하고 git 에 둘 필요 없는 경우.

GitHub Actions임의 cron

이런 분께 분기 감사 때 한 번 다운받으면 되는 팀.

h6s-bank-2026-04.zip

약 84 KB·보존 90일

01사전 점검

아래 명령을 그대로 붙여넣어 지금 내 환경이 준비됐는지 확인한다.

  • repo secret H6S_API_KEY 가 등록돼 있다

    gh secret list

    목록에 H6S_API_KEY 가 보인다

    아니면 — gh secret set H6S_API_KEY # 또는 repo Settings → Secrets

  • 워크스페이스에 대상 자격증명이 있다

    h6s credentials list

    그 기관에 매칭되는 자격증명이 1건 이상 보인다

    아니면 — h6s credentials create --interactive --cert

02실행

아래 파일을 .github/workflows/ 에 저장하고 기본 브랜치에 commit. 첫 검증은 Actions 탭 → Run workflow 로 수동 트리거.

yaml
# 수집 결과를 GitHub Artifact 로 90일간 보존.
# Repo 에 commit 하지 않고 별도 보존만 필요한 경우 (감사·재실행·로컬 다운로드 용도).
name: 수집 결과 Artifact 보존

on:
  schedule:
    - cron: '0 0 1 * *'   # 매월 1일
  workflow_dispatch: {}

jobs:
  fetch:
    runs-on: ubuntu-latest
    steps:
      - id: prev-month
        run: echo "value=$(date -u -d '1 month ago' +%Y-%m)" >> "$GITHUB_OUTPUT"

      - id: fetch
        uses: bolta-io/h6s-action@v0
        with:
          api-key: ${{ secrets.H6S_API_KEY }}
          schema: bank.transactions.cb.v1
          provider: CB_IBK
          month: ${{ steps.prev-month.outputs.value }}

      - uses: actions/upload-artifact@v4
        with:
          name: h6s-bank-${{ steps.prev-month.outputs.value }}
          path: ${{ steps.fetch.outputs.path }}
          retention-days: 90
          if-no-files-found: error

PR·commit 권한 불필요. repo secret H6S_API_KEY 하나면 끝.

03검증

  • Actions 탭 워크플로우가 초록.
  • run 페이지 하단 Artifacts 에 h6s-bank-YYYY-MM 이 보인다.
  • 로컬에서 gh run download <run-id> 로 받아진다.

04흔한 에러

fetch step 에서 NO_API_KEY 로 실패

secret 이름이 yml 의 secrets.H6S_API_KEY 와 다르다.

해결 secret 을 정확히 H6S_API_KEY 로 등록.

CREDENTIAL_INSUFFICIENT_FOR_PROVIDER

그 provider 에 매칭되는 자격증명이 워크스페이스에 없다.

해결 h6s credentials create --interactive --cert (공동인증서 1개로 전 기관 공용).

cron 시간이 지나도 안 돈다

yml 이 기본 브랜치에 없거나, repo 가 60일 비활성이라 scheduled workflow 가 멈췄다.

해결 기본 브랜치에 머지하고, 가끔 수동 트리거해 활성 유지.

05변형

같은 사례에서 자주 바꾸는 옵션. 다른 사례는 아래 이전/다음에서.

보존 기간 변경

yaml
retention-days: 30   # 최대 90

다른 schema 로 교체

yaml
schema: hometax.tax-invoices.sales.v1
          provider: HOMETAX
다음AI 자동 분개 (Claude Code Action)