Die VSTS-Snyk-Task entwickeln: ein Interview mit Jesse Houwing
Tim Kadlec
21. Dezember 2016
0 Min. LesezeitJesse Houwing ist Lead Consultant bei Xpirit. Vor Kurzem hat er eine sehr hilfreiche Visual Studio Team Services (VSTS)-Task veröffentlicht, mit der sich Snyk leichter in den VSTS-Workflow integrieren lässt. Wir finden es großartig, dass er sie entwickelt hat, und wollten deshalb mehr über die Task und ihre Entwicklung erfahren.
Warum haben Sie angefangen, Snyk zu verwenden?
Ich habe Build-Tasks für Visual Studio Team Services und Team Foundation Server (TFS) mit TypeScript und Node entwickelt und dabei festgestellt, dass sich die Module, von denen ich abhängig war, aus den unterschiedlichsten Gründen sehr häufig änderten. Es war schwer zu erkennen, welche Updates besonders dringend waren. Ich entwickle diese Tasks in meiner Freizeit. Snyk hilft mir dabei, wichtige Updates von Abhängigkeiten zu erkennen, die meine Aufmerksamkeit erfordern. Und zwar nicht nur während des Builds, sondern vor allem auch, nachdem ich meine Tasks im Visual Studio Marketplace veröffentlicht habe.
Wie kam es dazu, dass Sie die Task für VSTS entwickelt haben?
Ich habe Visual Studio-TypeScript-Projekte verwendet, um meine Erweiterungen zu entwickeln. Zwar lassen sich damit npm-Befehle ausführen, aber es gehörte nicht wirklich zu meinem üblichen Workflow, den Build-Prozess in meiner package.json zu definieren. Sehr oft ist der einzige npm-Schritt in meinem Build npm install. Außerdem wollte ich mein Snyk-API-Token zentral in VSTS speichern und an meine Build-Workflows weitergeben. Derzeit lassen sich in VSTS keine Build- oder Release-Variablen global definieren, aber Tasks können über Service Endpoints auf Tokens und Geheimnisse zugreifen.

Die Snyk-VSTS-Task lässt sich ganz einfach in Ihrer VSTS-Umgebung konfigurieren.
Können Sie den Entwicklungsprozess der Task beschreiben?
Ich hatte Snyk bereits eine Weile ohne Plugin verwendet, als Sam Guckenheimer beim MVP Summit in Seattle Snyk neben vielen anderen interessanten Sicherheitsprodukten erwähnte. Die meisten dieser Produkte waren bekannte Namen und hatten vor Kurzem eine Task zum Marketplace beigetragen, aber für Snyk gab es noch keine.Ich klappte auf dem etwa zehnstündigen Rückflug nach Amsterdam meinen Laptop auf und fing an zu programmieren. Dabei gelang es mir, einen ziemlich soliden ersten Prototyp zu erstellen und mit meiner lokalen TFS-2017-Instanz zu debuggen.Während der Entwicklung stieß ich auf einige Inkompatibilitäten mit Windows, für die ich später Workarounds fand. Nachdem ich mich an Snyk gewandt hatte, konnten wir einige der noch offenen Probleme beheben. So konnte ich die Vorschauversion veröffentlichen.
Verwenden Sie die Integration also gerade selbst?
Derzeit schützt Snyk meine VSTS Variable Tasks, MsBuild Helper Task, VSTS Snyk Task und die VSTS Extension Build and Release tasks von Microsoft, deren Pflege ich unterstütze.Auch andere Entwickler von Erweiterungen haben begonnen, die Integration zu nutzen. Gemeinsam mit den Visual Studio ALM Rangers prüfe ich, ob wir Snyk zum Schutz unserer Open-Source-Erweiterungen für Visual Studio Team Services einsetzen können.
Wo finden Interessierte die Task, wenn sie sie ausprobieren möchten?
Die Task lässt sich direkt über den VSTS Marketplace installieren. Die Verwendung ist ganz einfach: Installieren Sie die Task über den Marketplace, fügen Sie sie Ihrem Build hinzu und aktivieren Sie einige Kontrollkästchen.

Sobald Sie die Task über den Marketplace installiert haben, können Sie sie mit einem Klick zu Ihrem Build hinzufügen.
Der Quellcode ist ebenfalls auf GitHub verfügbar, falls jemand etwas beitragen möchte.
Starten Sie mit Capture-the-Flag
Erfahren Sie in unserem virtuellen On-Demand-Workshop für Einsteiger, wie Sie Capture-the-Flag-Challenges lösen.

