Wrapper for `step ca renew` that behaves sanely with systemd

Abierto
#1,549 7 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
20/100
Tipo de issue
Nueva funcionalidad
Claridad
Necesita aclaración
Estado de actividad
Estancado
Área
devops, security

Línea de trabajo

Start by reviewing the linked external wrapper repository and the behavior of step ca renew described in this issue. The issue does not name files or tests in smallstep/cli; done would require a clearly scoped decision about whether and how this systemd-oriented wrapper belongs in the CLI.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Hi folks,

I ran into a small but persistent operational annoyance with step ca renew:

When a certificate does not need renewal, step exits with code 1.
That is technically correct – but in a systemd world, it looks like a failure.

So I wrote a tiny wrapper that makes renewal boring again:

  • Pre-checks whether renewal is actually needed
  • Only runs step ca renew when required
  • Normalizes exit codes so “nothing to do” = success
  • Supports post-renew hooks (reload nginx, haproxy, etc.)
  • Plays nicely with systemd timers and services

Repo:
https://github.com/Torstein-Eide/Step-certificate-renewal-wrapper-script

The goal is not to replace step, but to make it operationally smoother in real systems where exit codes matter and automation should stay quiet unless something actually broke.

Bluntly:
step is correct.
systemd is strict.
This script keeps the peace between them.

Feedback welcome. If this solves a problem for others, even better.

Lenguaje dominante
Go
Estrellas
4.3k
Forks
320
Merge medio
2 d 3 h
PR fusionados (30 d)
11

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de smallstep/cli

Todos los issues de smallstep/cli

Issues similares

Más issues de Go

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.