<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Continuous Delivery Archive - Patrick Steinert</title>
	<atom:link href="https://www.patricksteinert.de/category/technology/continuous-delivery/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.patricksteinert.de/category/technology/continuous-delivery/</link>
	<description>... writes about the Internet of Things, Agile Software Development and Photography</description>
	<lastBuildDate>Fri, 31 Jul 2020 13:12:18 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.2</generator>

<image>
	<url>https://www.patricksteinert.de/wordpress/wp-content/uploads/2016/11/cropped-mylogo-32x32.png</url>
	<title>Continuous Delivery Archive - Patrick Steinert</title>
	<link>https://www.patricksteinert.de/category/technology/continuous-delivery/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Gitlab für Continuous Integration &#038; Continuous Delivery</title>
		<link>https://www.patricksteinert.de/technology/continuous-delivery/gitlab-fur-continuous-integration-continuous-delivery/</link>
					<comments>https://www.patricksteinert.de/technology/continuous-delivery/gitlab-fur-continuous-integration-continuous-delivery/#comments</comments>
		
		<dc:creator><![CDATA[Patrick Steinert]]></dc:creator>
		<pubDate>Fri, 31 Jul 2020 13:12:18 +0000</pubDate>
				<category><![CDATA[Continuous Delivery]]></category>
		<guid isPermaLink="false">https://www.patricksteinert.de/?p=1878</guid>

					<description><![CDATA[<p>Ist Gitlab für Continuous Integration und Continuous Delivery (CI/CD) ausreichend? Das habe ich mich gefragt, als ich seit langer Zeit mal wieder ein halbwegs ernsthaftes Entwicklungsprojekt begonnen habe. Da ich keinen extra Jenkins aufsetzen wollte, habe ich mir die Funktionen von Gitlab angesehen. In diesem Sinne hier meine Meinung dazu. Disclaimer: ich muss sagen, dass ich mich nicht in epischer Breite damit befasst habe. Daher ist es eher eine Newbie-Meinung als Fachartikel. Prinzipiell möchte ich die Software aus den Repositorys der einzelnen Komponenten kompilieren, die Tests ausführen, ein neues Docker Image auf einer eigenen Docker Registry bereitstellen und auf einem Staging-System deployen. Funktional ist das für Gitlab kein Problem. Bis auf den letzten Punkt. Ein wenig. Positiv Was ich allgemein gut finde ist, sich Alles in demselben System befindet. Alles ist in einer Oberfläche, es gibt nur einen Login, die Repository und Build Informationen sind im UI miteinander verknüpft. Das&#8230;</p>
<p>The post <a href="https://www.patricksteinert.de/technology/continuous-delivery/gitlab-fur-continuous-integration-continuous-delivery/">Gitlab für Continuous Integration &#038; Continuous Delivery</a> appeared first on <a href="https://www.patricksteinert.de">Patrick Steinert</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Ist Gitlab für Continuous Integration und Continuous Delivery (CI/CD) ausreichend? Das habe ich mich gefragt, als ich seit langer Zeit mal wieder ein halbwegs ernsthaftes Entwicklungsprojekt begonnen habe. Da ich keinen extra Jenkins aufsetzen wollte, habe ich mir die Funktionen von <a href="https://about.gitlab.com/">Gitlab</a> angesehen. In diesem Sinne hier meine Meinung dazu. Disclaimer: ich muss sagen, dass ich mich nicht in epischer Breite damit befasst habe. Daher ist es eher eine Newbie-Meinung als Fachartikel.</p>
<p>Prinzipiell möchte ich die Software aus den Repositorys der einzelnen Komponenten</p>
<ul>
<li>kompilieren,</li>
<li>die Tests ausführen,</li>
<li>ein neues Docker Image auf einer eigenen Docker Registry bereitstellen und</li>
<li>auf einem Staging-System deployen.</li>
</ul>
<p>Funktional ist das für Gitlab kein Problem. Bis auf den letzten Punkt. Ein wenig.</p>
<h2>Positiv</h2>
<p>Was ich allgemein gut finde ist, sich Alles in demselben System befindet. Alles ist in einer Oberfläche, es gibt nur einen Login, die Repository und Build Informationen sind im UI miteinander verknüpft. Das ist doch viel einfacher zu handhaben als ich das sonst kenne. So habe ich mir das vorgestellt.</p>
<p>Das System verwendet Docker Images als Buildumgebung. Das ist vorteilhaft, denn man muss auf dem System nicht erst die Build-Tools (wie Maven, Java, npm, etc.) installieren, sondern kann entsprechende Images nutzen. Ein SSH-Login auf das Buildsystem oder die Worker-Nodes ist damit nicht notwendig, alles geht per Konfiguration im Git. (Zumindest, wenn die Kubernetes Nodes von jemanden eingerichtet werden.)</p>
<h2>Negativ</h2>
<p>Zur Konfiguration der Build Jobs (gitlab Pipelines) wird eine YAML Datei im Repository angelegt. In der Datei werden in entsprechenden Abschnitte die Build-Umgebung und die Build-Befehle angegeben. Ich finde da sehr unpraktisch. Ich will mich eigentlich nicht mit dem Befehlen und der Syntax für das Buildsystems beschäftigen, sondern einfach die Aufgabe einrichten. So ist es in etwa, als wenn ich Kunden im CRM per SQL Statement anlege. Eine dialogbasierte UI wäre um einiges angenehmer. Die Doku zu durchwühlen ist da doch um einiges aufwändiger als es sein müsste.</p>
<p>Für einzelne Repositorys kann man die Pipelines konfigurieren und wie oben gesagt, alle Schritte umsetzen. Ich habe jedoch keine Möglichkeit gesehen, abhängige Projekte zu bauen. Wenn ich also einen Service habe, der eine API für ein Frontend anbietet, dann möchte ich, bevor ich den Service auf eine Live Umgebung deploye, zunächst die Integration Tests des Frontends ausführen um zu sehen, ob alles läuft. Solche Abhängigkeiten oder auch Continuous Delivery Pipelines konnte ich nicht konfigurieren. Vielleicht habe ich aber auch nicht tief genug in die Dokumentation der YAML Files geschaut.</p>
<h2>Fazit</h2>
<p>Man kann Continuos Integration mit Gitlab machen, wenn man auf Config-Files steht. Für größere Projekte und Continuous Delivery hilft mir persönlich das System so erstmal nicht weiter. Da nutze ich doch lieber eine der Alternativen.</p>
<p>Hat jemand andere Erfahrungen?</p>
<p><span id="more-1878"></span></p>
<p>The post <a href="https://www.patricksteinert.de/technology/continuous-delivery/gitlab-fur-continuous-integration-continuous-delivery/">Gitlab für Continuous Integration &#038; Continuous Delivery</a> appeared first on <a href="https://www.patricksteinert.de">Patrick Steinert</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.patricksteinert.de/technology/continuous-delivery/gitlab-fur-continuous-integration-continuous-delivery/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Retrospective January 2016</title>
		<link>https://www.patricksteinert.de/technology/retrospective-january-2016/</link>
		
		<dc:creator><![CDATA[Patrick Steinert]]></dc:creator>
		<pubDate>Tue, 02 Feb 2016 00:00:10 +0000</pubDate>
				<category><![CDATA[Agile Software Development]]></category>
		<category><![CDATA[Continuous Delivery]]></category>
		<category><![CDATA[Internet of Things]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[iot]]></category>
		<category><![CDATA[leanstartup]]></category>
		<category><![CDATA[retrospective]]></category>
		<guid isPermaLink="false">http://www.patrickbreucking.de/wordpress/?p=1129</guid>

					<description><![CDATA[<p>Favorite slogan: You want to get things done, not building an inventory of unfinished work! What have I done: Kicked of the first quarter 2016 with hard deadlines for Cloud of Things (watch out for CeBIT) Had some weekend &#38; night shifts because of service outages of Cloud of Things. Turned out that a Gelf4J appender for Graylog caused the issues. Started to play with JavaFX and build a Cloud of Things Genius Client for testing purposes on CoT. (Thanks code.makery for this helpful JavaFX tutorial) Did a talk on our Deutsche Telekom M2M Day 2016 I have a new record on contributing to Github Read: MQTT Security Fundamentals: MQTT Payload Encryption Why Big Companies Keep Failing: The Stack Fallacy The evils of chasing Scrum Velocity&#8230; &#160; PS: A new try to give a regular update on this blog. Last year I tried a weekly recap, didn&#8217;t worked out. But I&#8217;m pretty&#8230;</p>
<p>The post <a href="https://www.patricksteinert.de/technology/retrospective-january-2016/">Retrospective January 2016</a> appeared first on <a href="https://www.patricksteinert.de">Patrick Steinert</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h1><strong>Favorite slogan:</strong> You want to get things done, not building an inventory of unfinished work!</h1>
<p><strong>What have I done:</strong></p>
<ul>
<li>Kicked of the first quarter 2016 with hard deadlines for Cloud of Things (watch out for CeBIT)</li>
<li>Had some weekend &amp; night shifts because of service outages of Cloud of Things. Turned out that a Gelf4J appender for Graylog caused the issues.</li>
<li>Started to play with JavaFX and build a <a href="https://github.com/marquies/cot-geniusclient">Cloud of Things Genius Client</a> for testing purposes on CoT. (Thanks code.makery for this helpful <a href="http://code.makery.ch/library/javafx-8-tutorial/">JavaFX tutorial</a>)</li>
<li>Did a talk on our Deutsche Telekom M2M Day 2016</li>
<li>I have a <a href="https://twitter.com/marquies/status/693964026024435712">new record on contributing</a> to Github</li>
</ul>
<p><strong>Read:</strong></p>
<ul>
<li><a href="http://www.hivemq.com/blog/mqtt-security-fundamentals-payload-encryption">MQTT Security Fundamentals: MQTT Payload Encryption</a></li>
<li><a href="http://techcrunch.com/2016/01/18/why-big-companies-keep-failing-the-stack-fallacy/?ncid=rss&amp;utm_content=buffer1ab5e&amp;utm_medium=social&amp;utm_source=twitter.com&amp;utm_campaign=buffer#.g8zkhrw:JeXX">Why Big Companies Keep Failing: The Stack Fallacy</a></li>
<li><a href="http://co-learning.be/blog/the-evils-of-chasing-scrum-velocity/02092015">The evils of chasing Scrum Velocity&#8230;</a></li>
</ul>
<p>&nbsp;</p>
<p>PS: A new try to give a regular update on this blog. Last year I tried a weekly recap, didn&#8217;t worked out. But I&#8217;m pretty sure that this will work ;-)<span id="more-1129"></span></p>
<p>The post <a href="https://www.patricksteinert.de/technology/retrospective-january-2016/">Retrospective January 2016</a> appeared first on <a href="https://www.patricksteinert.de">Patrick Steinert</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
