Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
4 changes: 2 additions & 2 deletions openspec/changes/public-release/tasks.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,11 +26,11 @@

- [x] 4.1 Adicionar ao `.github/workflows/ci.yml` o job `release-check` (`goreleaser check`, snapshot com `--skip=publish` e `shellcheck -s sh install.sh`) e verificar que ele passa num PR
- [x] 4.2 Criar `.github/workflows/release.yml` em `push: tags: ['v*.*.*']` com os jobs `test` → `goreleaser` (rascunho + upload do `dist/`) → `smoke` (ubuntu `.deb`, fedora `.rpm`, macos `install.sh` com `KANIVET_BASE_URL` local) → `publish` (`gh release edit --draft=false`, `--latest` só fora de pré-release), com `contents: write` só em `goreleaser` e `publish`, e verificar com `actionlint`
- [ ] 4.3 Fazer cada job de `smoke` conferir que `kanivet-cli --version` contém a versão da tag, rodar `kanivet-cli catalog lint`, remover o pacote e conferir que `/usr/bin/kanivet-cli` sumiu, e verificar com um ensaio numa tag de pré-release descartável (`v0.1.0-rc.1`) num fork ou no próprio repositório, apagando a release e a tag depois
- [x] 4.3 Fazer cada job de `smoke` conferir que `kanivet-cli --version` contém a versão da tag, rodar `kanivet-cli catalog lint`, remover o pacote e conferir que `/usr/bin/kanivet-cli` sumiu, e verificar com um ensaio numa tag de pré-release descartável (`v0.1.0-rc.1`) num fork ou no próprio repositório, apagando a release e a tag depois

## 5. Documentação

- [ ] 5.1 Reescrever o "Início rápido" do `README.md` com a seção "Instalação" (comando do `install.sh`, `apt install ./…deb`, `dnf install ./…rpm`, `KANIVET_VERSION`/`KANIVET_INSTALL_DIR`, `xattr -d com.apple.quarantine` para download pelo navegador, `--nogpgcheck` se o dnf recusar) e manter o `go build` como "Compilar do código", e verificar seguindo os comandos do README contra a release de ensaio da 4.3
- [x] 5.1 Reescrever o "Início rápido" do `README.md` com a seção "Instalação" (comando do `install.sh`, `apt install ./…deb`, `dnf install ./…rpm`, `KANIVET_VERSION`/`KANIVET_INSTALL_DIR`, `xattr -d com.apple.quarantine` para download pelo navegador, `--nogpgcheck` se o dnf recusar) e manter o `go build` como "Compilar do código", e verificar seguindo os comandos do README contra a release de ensaio da 4.3
- [x] 5.2 Documentar no README, na seção de testes, como fazer uma release (checklist manual, tag anotada, acompanhar o workflow, rollback) e verificar que os comandos citados existem no `release.yml`

## 6. Primeira release pública
Expand Down
8 changes: 7 additions & 1 deletion test/integration/Dockerfile.opensuse
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
FROM opensuse/tumbleweed
RUN zypper -n install bash ca-certificates curl git gzip jq sudo tar unzip xz && zypper clean -a
# Espelhos do Tumbleweed às vezes servem metadados defasados durante a troca de
# snapshot (zypper sai com 104: pacote não encontrado); força refresh e tenta de novo.
RUN for i in 1 2 3; do \
zypper -n --gpg-auto-import-keys ref -f && \
zypper -n install bash ca-certificates curl git gzip jq sudo tar unzip xz && break; \
[ "$i" = 3 ] && exit 1; sleep 15; \
done && zypper clean -a
# No Tumbleweed as regras ficam em /usr/etc/sudoers.d
RUN useradd -m -s /bin/bash dev && mkdir -p /usr/etc/sudoers.d && echo 'dev ALL=(ALL) NOPASSWD:ALL' | tee /etc/sudoers.d/dev > /usr/etc/sudoers.d/dev
USER dev
Expand Down
Loading