Bouteiller

Support voor Bouteiller

Bouteiller is een gratis app voor iPhone en iPad om je Jenkins-servers te volgen en te bedienen: status van jobs, consolelogs, builds starten en stoppen, inputs van pipelines goedkeuren, widgets en Opdrachten.

Vereisten

Een API-token aanmaken

Bouteiller logt in met je Jenkins-gebruikersnaam en een API-token, nooit met je wachtwoord.

  1. Log in op de webinterface van Jenkins.
  2. Open de pagina Security van je gebruikersinstellingen: ga naar https://jouw-jenkins/me/security (het serverformulier in de app heeft een knop Open de tokenpagina die dit voor je doet), of klik rechtsboven op je naam en daarna op Security. Daar vind je het onderdeel API Token.
  3. Kies in het onderdeel API Token voor Add new Token, geef het een naam (bijvoorbeeld ‘Bouteiller iPhone’) en genereer het.
  4. Kopieer het token meteen: Jenkins toont het maar één keer.
  5. Voeg in Bouteiller een server toe en vul het adres van de server, je gebruikersnaam en het token in. De app controleert de verbinding en de Jenkins-versie voordat de server wordt bewaard.

Je kunt het token op elk moment intrekken op dezelfde Jenkins-pagina; de app meldt dan dat de inloggegevens worden geweigerd.

VPN en interne certificaatautoriteiten

Servers die alleen via een VPN bereikbaar zijn

Bouteiller bestuurt je VPN niet. Schakel bij het toevoegen of wijzigen van een server Alleen bereikbaar via een VPN in: als de server niet antwoordt, stelt de app dan voor om verbinding te maken met de VPN in plaats van een algemene fout te tonen.

Certificaten van een interne autoriteit

Als je Jenkins-server een certificaat gebruikt dat is uitgegeven door de eigen certificaatautoriteit van je organisatie, vertrouwt iOS het standaard niet. Er zijn twee mogelijkheden:

Keur alleen een certificaat goed waarvan je de vingerafdruk met je IT-afdeling hebt gecontroleerd. Anders kan iedereen die de verbinding kan onderscheppen je API-token lezen.

Onversleutelde HTTP

HTTPS is de norm. Onversleutelde HTTP wordt alleen geaccepteerd voor een server op het lokale netwerk, nadat je dit uitdrukkelijk hebt toegestaan in het serverformulier: het API-token wordt dan onversleuteld verstuurd.

Meldingen

In deze versie werken meldingen in lokale modus: de app controleert je favoriete jobs op de achtergrond en toont een melding op het apparaat als er iets gebeurt. Er komt geen server van de ontwikkelaar aan te pas.

Instellen

  1. Voeg de job toe aan je favorieten.
  2. Tik op de bel van de favoriete job en kies de gebeurtenissen: build gestart, geslaagd, mislukt, instabiel, weer groen, afgebroken, wachtende input. De standaardkeuze (‘Meld problemen’) omvat mislukt, instabiel, weer groen en wachtende input.
  3. Sta meldingen toe als iOS erom vraagt. De toestand van de job op dat moment is het uitgangspunt: alleen latere gebeurtenissen worden gemeld.

Beperkingen van de lokale modus

Het onderdeel Meldingen in de instellingen van de app toont of meldingen en Ververs op achtergrond zijn toegestaan, en laat je direct een controle uitvoeren.

Pushmeldingen die ook buiten de VPN werken, staan gepland voor een toekomstige versie, via een optionele Jenkins-plug-in.

Veelgestelde vragen

Is Bouteiller een officiële Jenkins-app?
Nee. Bouteiller is een onafhankelijke app, ontwikkeld door een particulier. De app is niet verbonden aan en wordt niet onderschreven door het Jenkins-project.
Moet ik een plug-in op mijn server installeren?
Nee. De app werkt met een Jenkins-server zonder enige plug-in. Freestyle-jobs kun je doorbladeren, starten, stoppen en opnieuw bouwen; stages van pipelines, inputs en testresultaten worden getoond als de bijbehorende plug-ins zijn geïnstalleerd.
De app zegt dat mijn Jenkins-versie niet wordt ondersteund.
Bouteiller vereist Jenkins 2.580.1 LTS of een weekly release 2.580 of nieuwer. Vraag je beheerder naar een upgrade.
De app zegt dat de inloggegevens worden geweigerd.
Controleer de gebruikersnaam (je Jenkins-gebruikers-ID, niet per se je weergavenaam) en het API-token. Als de server achter een reverse proxy of een single sign-on-portal staat, zorg dan dat de header Authorization Jenkins bereikt.
De server is onbereikbaar, hoewel hij in Safari werkt.
Controleer of je hetzelfde adres hebt ingevuld als in Safari, inclusief het contextpad (bijvoorbeeld https://ci.example.com/jenkins). Werkt Safari alleen via de VPN, schakel dan de VPN-optie van de server in. Wordt het certificaat niet vertrouwd, zie dan interne certificaatautoriteiten.
Kan ik gevoelige acties beveiligen?
Ja. In de instellingen kun je Face ID, Touch ID of de toegangscode van het apparaat vereisen voordat een build wordt gestopt en voordat een input wordt goedgekeurd of afgewezen. De authenticatie wordt door iOS afgehandeld; de app ziet nooit biometrische gegevens.
Kan ik meerdere servers gebruiken?
Ja, zoveel als je wilt. Het tabblad Favorieten toont de favoriete jobs van alle servers.
Welke widgets en opdrachten zijn er?
Widgets: status van een job (beginscherm en toegangsscherm), favorieten, mislukte builds van een server, met een startknop voor jobs zonder parameters. Opdrachten en Siri: start een job, status van een job, mislukte builds, open een job. Een regelaar in het bedieningspaneel start een favoriete job. Widgets tonen het tijdstip van hun laatste update en geven aan wanneer de server onbereikbaar is.
Waarom tonen de widgets oude gegevens?
Widgets worden vernieuwd wanneer iOS dat toestaat en alleen zolang de server bereikbaar is. Anders behouden ze de laatst bekende status, met het tijdstip van de laatste update en de aanduiding ‘onbereikbaar’.
Hoe verwijder ik mijn gegevens?
Verwijder de server in de app: het API-token wordt uit de sleutelhanger verwijderd, samen met de favorieten, meldingsinstellingen en gegevens in cache. Alleen de cache wissen kan in de instellingen. Als je de app verwijdert, worden de gegevens ervan verwijderd; omdat iOS onderdelen van de sleutelhanger kan bewaren nadat een app is verwijderd, verwijder je eerst je servers als je zeker wilt weten dat de tokens zijn gewist, en trek je de tokens in Jenkins in.
Verzamelt de app gegevens?
Nee. Zie het privacybeleid.

Contact

Voor een vraag, een probleem of een suggestie kun je mailen naar: nicolas.mannocci@gmail.com.

Vermeld bij een probleem de versie van de app (te zien in de instellingen van de app), je apparaat en iOS-versie, je Jenkins-versie en, indien van toepassing, of er een VPN of een interne certificaatautoriteit in het spel is. Stuur nooit je API-token mee.