Menselijke goedkeuring voor DevOps

Riskante wijzigingen wachten op de storingsdienst.

De verantwoordelijke engineer beslist op de telefoon voordat je agent de infrastructuur wijzigt.

Hoe krijgt een AI-DevOps-agent toestemming van de dienstdoende engineer?

Pushary vraagt de dienstdoende engineer op de telefoon om toestemming. Zet één aanroep vóór de migratie, herstart of capaciteitsverlaging. De engineer keurt goed of wijst af op het vergrendelscherm terwijl de agent wacht. Zonder tijdig antwoord gebeurt de wijziging niet. Elk besluit wordt met persoon en tijdstip bewaard voor de incidentanalyse.

Waar toestemming nodig is

Deze acties horen niet vanzelf te starten

runMigration(name)
Een migratie die lastig terug te draaien is verdient een controle, ook midden in de nacht. Een agent ziet die verantwoordelijkheid niet vanzelf.
scaleDown(service, replicas)
Capaciteit verlagen bij een verkeerd begrepen incident kan traagheid in volledige uitval veranderen.
rotateSecret(name)
Een sleutel vervangen kan alle diensten breken die nog de oude waarde gebruiken. Dat vraagt een afweging, geen simpele drempelwaarde.
deleteResource(arn)
Een schijnbaar ongebruikte resource kan nog cruciaal zijn. Automatisch opruimen mag die niet zomaar verwijderen.
promoteToProduction(sha)
Bij een uitrol merken echte gebruikers de fout. Daarvoor kunnen tests haar nog onderscheppen.

De code

Eén aanroep in je bestaande stap

Beveilig de actie, niet de hele agent. Veilige taken blijven doorgaan zonder iemand iets te vragen.

bash
pip install pushary
één aanroep
import os
from pushary import PusharyServer

px = PusharyServer(api_key=os.environ["PUSHARY_API_KEY"])

def remediate(incident, plan):
    # Read-only diagnosis and reversible fixes run unattended.
    if plan.reversible and plan.blast_radius == "single-pod":
        return apply(plan)

    decision = px.decisions.ask(
        external_id=incident.on_call_id,
        type="confirm",
        question=f"{plan.summary}\nBlast radius: {plan.blast_radius}. Reversible: {plan.reversible}.",
    )

    if not decision["approved"]:
        return page_secondary(incident, reason="human declined automated remediation")
    return apply(plan)

Wie beslist

Beslissen zonder achter een bureau te zitten

De dienstdoende engineer zit niet altijd achter een terminal. Een chatbericht werkt als die persoon het kanaal leest en meldingen aan heeft. Anders blijft de wijziging geblokkeerd terwijl het incident voortduurt. Pushary bereikt de telefoon via de gebruikers-ID uit je rooster.

We sturen goedkeuringen al naar Slack. Wat is anders?

Een bericht toont de vraag. Om je agent op een besluit te laten wachten heb je ook een bruikbaar antwoord, een deadline, bewaarde open aanvragen en een beslisgeschiedenis nodig. Bij alleen een chatbericht moet je die delen zelf bouwen. Dat is juist belangrijk wanneer je tijdens een storing een herstelupdate uitrolt. Pushary bewaart de aanvraag en stuurt het antwoord terug naar je code. Werkt je team in Slack, dan kan de vraag daar nog steeds aankomen. De antwoorden staan wel op één plek in plaats van verspreid door de kanaalgeschiedenis. Je eigen logica blijft bepalen welke acties toestemming vereisen.

Lees meer: Het SRE-boek van Google over releases en wijzigingsbeheer.

$99/ maand, Partner-abonnement

Bouw het in je product in. Je gebruikers hebben geen Pushary-account nodig en betalen ons niets.

What the Partner plan covers

Veelgestelde vragen

Antwoorden op je vragen

Overleeft het wachten een deployment?
De aanvraag wel, de wachtende code in je proces niet. Pushary bewaart de open aanvraag. Sla de beslissings-ID op vóór een herstart en hervat via een ondertekende webhook of een API-opvraag.
Kan de vraag een dienstrooster volgen?
Ja. Je eigen roosterlogica kiest de gebruikers-ID. Zonder antwoord blijft de wijziging geblokkeerd en kan je agent een tweede engineer vragen, volgens je bestaande escalatiebeleid.
Hoe voorkomen we vragen over iedere kleine wijziging?
Kijk naar omkeerbaarheid en impact. Goed terug te draaien stappen kunnen direct lopen en later worden beoordeeld. Moeilijk te herstellen stappen vragen eerst toestemming. Een korte wachtrij krijgt meer aandacht.
Wat kunnen we later aan een auditor geven?
Het opgeslagen record bevat de vraag, de getoonde informatie, het antwoord, de persoon en het tijdstip. Het is opvraagbaar en exporteerbaar: 90 dagen bij Partner Launch en 365 bij Partner Growth. Een callback-URL ontvangt antwoorden ook als ondertekende webhooks voor je eigen bewijssysteem.

Laat een mens beslissen waar dat nodig is.

Koppel elke gebruiker één keer. Stel je vraag met één aanroep en voer de actie alleen uit na een ja. Elk antwoord wordt opgeslagen.

Start free