Ich arbeite an der kontinuierlichen Integration eines. NET-Projekts mit Jenkins. Bei weitem kann ich einen Jenkins-Job im Fenster einstellen. Aber jetzt muss ich das alles in Jenkins replizieren, die als Docker Container laufen. Ich bin in der Lage, Jenkins in Docker zu starten, Github als Quell-Repository zu verwenden, aber wenn ich versuche, dieses Projekt zu erstellen, schlägt es fehl. Mein Projekt verwendet asp.net core, also gehe ich davon aus, dass es auch auf Linux laufen sollte (was das Betriebssystem von docker virtual machine ist). Was fehlt mir hier? Jede Hilfe wird sehr geschätztWie läuft .Net-Projekt als Teil von Jenkins Job in Docker
Antwort
Die Jenikins Aufgabe sollte dotnet
Befehle aufrufen, um zu bauen. MSBuild wird für dotnet
noch nicht unterstützt.
Grundsätzlich hat es etwas zu tun, ähnlich dem, was wir tun, in KoreBuild:
- Dotnet
- Dotnet build/Dotnet
- Dotnet Test
etc
Ich versuchte Ditnet Build und Empfangen Fehlerausgabe: [TestMono] $/bin/sh -xe /tmp/hudson1233862377010940298.sh + dotnet build /tmp/hudson1233862377010940298.sh: 2: /tmp/hudson1233862377010940298.sh: dotnet: nicht gefunden Build-Schritt 'Ausführen Shell' markiert als Versagen bauen Beendet: FAILURE – Monica
Sie müssen dotnet installieren und fügen Sie es in den Pfad als Teil Ihrer Build-Schritt –
Ich habe Dotnet CLI und seine Arbeit in der virtuellen Maschine heruntergeladen, aber wenn ich versuche, das gleiche von Jenkins Job auszuführen, bekomme ich Fehler: Fehler beim Erstellen von Prime für den NuGet-Cache. Wiederherstellung fehlgeschlagen mit: 1. Es ist als ob keine der Abhängigkeiten aufgelöst wurde. Kannst du bitte etwas vorschlagen? – Monica
Ich arbeite an einem Projekt mit .Net-Kern und wir haben begonnen, Jenkins in Docker zu verwenden Bisher war der einzige Weg, den ich fand, ein benutzerdefiniertes Jenkins-Bild zu erstellen. Dies ist meine Docker-Datei:
FROM jenkins
USER root
# Work around https://github.com/dotnet/cli/issues/1582 until Docker releases a
# fix (https://github.com/docker/docker/issues/20818). This workaround allows
# the container to be run with the default seccomp Docker settings by avoiding
# the restart_syscall made by LTTng which causes a failed assertion.
ENV LTTNG_UST_REGISTER_TIMEOUT 0
# Install .NET CLI dependencies
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
libc6 \
libcurl3 \
libgcc1 \
libgssapi-krb5-2 \
libicu52 \
liblttng-ust0 \
libssl1.0.0 \
libstdc++6 \
libunwind8 \
libuuid1 \
zlib1g \
&& rm -rf /var/lib/apt/lists/*
# Install .NET Core SDK
ENV DOTNET_SDK_VERSION 1.0.0-preview2-003131
ENV DOTNET_SDK_DOWNLOAD_URL https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/$DOTNET_SDK_VERSION/dotnet-dev-debian-x64.$DOTNET_SDK_VERSION.tar.gz
RUN curl -SL $DOTNET_SDK_DOWNLOAD_URL --output dotnet.tar.gz \
&& mkdir -p /usr/share/dotnet \
&& tar -zxf dotnet.tar.gz -C /usr/share/dotnet \
&& rm dotnet.tar.gz \
&& ln -s /usr/share/dotnet/dotnet /usr/bin/dotnet
# Trigger the population of the local package cache
ENV NUGET_XMLDOC_MODE skip
RUN mkdir warmup \
&& cd warmup \
&& dotnet new \
&& cd .. \
&& rm -rf warmup \
&& rm -rf /tmp/NuGetScratch
USER jenkins
Ich bin immer noch auf der Suche nach einem besseren Weg, es zu tun.
- 1. Fehler beim Jenkins in Docker läuft
- 2. Configure Jenkins Job Docker installieren über ansible
- 3. Jenkins + Docker
- 4. Cron-Job läuft nicht in Docker-Container auf ubuntu
- 5. Sicherheit Docker wie es läuft als Root
- 6. Jenkins-Workflow-Job: Parameter als Zweigspezifizierer verwenden
- 7. jenkins ausgelöst Job läuft nur zu einer bestimmten Tageszeit
- 8. Docker Jenkins Integration
- 9. UnicodeEncodeError nur, wenn als cron-Job läuft
- 10. Einen Job in jenkins umbenennen
- 11. Umgebungsvariablen für Docker-komponieren innerhalb von Jenkins
- 12. Wie gelöschte Jenkins Job abrufen?
- 13. Jenkins Trigger On-Demand-Slaves in Docker
- 14. Lauf Jenkins Job sofort
- 15. YAML - Jenkins Job Builder
- 16. Jenkins läuft nicht als Deamon auf Centos
- 17. Jenkins in Docker, Arbeitsbereich
- 18. Jenkins Job Builder - Automatische Pipeline Job
- 19. HHVM innerhalb Docker läuft immer als root
- 20. Jenkins-Job gleichzeitig aufteilen
- 21. Jenkins-Job schlägt fehl
- 22. Jenkins mit Docker: Wie man Tests durchführt?
- 23. Docker und jenkins
- 24. einen Teil Job
- 25. machen Jenkins (Hudson) Job hängen von einem anderen Job
- 26. Trigger Jenkins Job von Jira auf Anfrage
- 27. Wie konfiguriert man Jenkins in Docker?
- 28. zurück von docker-komponieren in jenkins
- 29. Jenkins External-Monitor-Job-Setup
- 30. Start jenkins job sofort nach der Erstellung von Seed Job
vielleicht beschreiben Sie die Befehle, die Sie in Ihrem Job jenkins – lvthillo
Ich habe versucht, MSBuild-Plugin in Jenkins verwenden, um meine Lösung zu bauen. Folgendes ist Teil der Konsolenausgabe: Pfad zu MSBuild.exe: msbuild.exe Ausführen des Befehls msbuild.exe AspNetCore.sln aus/var/jenkins_home/workspace/TestAspNetCore [TestAspNetCore] $ msbuild.exe AspNetCore.sln Build Schritt ' Erstellen Sie ein Visual Studio-Projekt oder -Lösung mit MSBuild 'geändert Build-Ergebnis in FAILURE Build-Schritt' Erstellen Sie ein Visual Studio-Projekt oder eine Lösung mit MSBuild 'markiert Build als Fehler Fertig: FAILURE – Monica