Skip to content

Commit 6d05ee3

Browse files
committed
add jenkins page
1 parent 08083a7 commit 6d05ee3

File tree

95 files changed

+485
-181
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

95 files changed

+485
-181
lines changed

all.html

Lines changed: 77 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -6242,8 +6242,11 @@ <h2>Operating system learning checklist</h2>
62426242
</li>
62436243
</ol>
62446244
<h1>Ubuntu</h1>
6245-
<p>Ubuntu is a Debian Linux-based operating system distribution often used for
6246-
Python development and application deployment.</p>
6245+
<p><a href="https://www.ubuntu.com/">Ubuntu</a> is a Debian Linux-based
6246+
<a href="/operating-systems.html">operating system</a> distribution often used for
6247+
<a href="/learning-programming.html">Python development</a> and
6248+
<a href="/deployment.html">web application deployment</a>.</p>
6249+
<p><a href="https://www.ubuntu.com/" style="border: none;"><img src="/source/static/img/logos/ubuntu-linux.png" width="100%" alt="Official Ubuntu logo. Copyright Canonical Ltd." class="technical-diagram"></a></p>
62476250
<h2>Why is Ubuntu important for Python?</h2>
62486251
<p>Ubuntu is one of the most commonly used Linux distributions for both local
62496252
development and server deployments. Some
@@ -7051,7 +7054,7 @@ <h2>Open source CI projects</h2>
70517054
the application was written in.</p>
70527055
<ul>
70537056
<li>
7054-
<p><a href="http://jenkins-ci.org/">Jenkins</a> is a common CI server for building and
7057+
<p><a href="/jenkins.html">Jenkins</a> is a common CI server for building and
70557058
deploying to test and production servers.
70567059
<a href="https://github.com/jenkinsci/jenkins">Jenkins source code is on GitHub</a>.</p>
70577060
</li>
@@ -7078,49 +7081,27 @@ <h2>Open source CI projects</h2>
70787081
</li>
70797082
</ul>
70807083
<h2>Jenkins CI resources</h2>
7084+
<p>Jenkins is commonly used as a continuous integration server implementation
7085+
for Python projects because it is open source and programming language
7086+
agnostic. Learn more via the following resources or on
7087+
<a href="/jenkins.html">the dedicated Jenkins page</a>.</p>
70817088
<ul>
70827089
<li>
7083-
<p><a href="https://medium.com/@mondaini/assembling-a-continuous-integration-service-for-a-django-project-on-jenkins-5f979d4c4184">Assembling a continuous integration service for a Django project on Jenkins</a>
7084-
shows how to set up a Ubuntu instance with a Jenkins server that'll build a
7085-
<a href="/django.html">Django</a> project.</p>
7086-
</li>
7087-
<li>
70887090
<p>My book on <a href="http://www.deploypython.com/">deploying Python web applications</a>
70897091
walks through every step of setting up a Jenkins project with a WSGI
70907092
application to enable continuous delivery. Take a look if you're not
70917093
grokking all of the steps provided in these other blog posts.</p>
70927094
</li>
70937095
<li>
7096+
<p><a href="https://medium.com/@mondaini/assembling-a-continuous-integration-service-for-a-django-project-on-jenkins-5f979d4c4184">Assembling a continuous integration service for a Django project on Jenkins</a>
7097+
shows how to set up a Ubuntu instance with a Jenkins server that'll build a
7098+
<a href="/django.html">Django</a> project.</p>
7099+
</li>
7100+
<li>
70947101
<p><a href="http://michal.karzynski.pl/blog/2014/04/19/continuous-integration-server-for-django-using-jenkins/">Setting up Jenkins as a continuous integration server for Django</a>
70957102
is another solid tutorial that also shows how to send email notifications
70967103
as part of the build process.</p>
70977104
</li>
7098-
<li>
7099-
<p>If you're running into difficulty adding an SSH key to your Jenkins system
7100-
account so you can connect to another server or Git repository
7101-
<a href="http://dcycleproject.org/blog/51/connecting-jenkins-and-git">this blog post on connecting Jenkins with Git</a>
7102-
to get the steps to solve that problem.</p>
7103-
</li>
7104-
<li>
7105-
<p><a href="http://chromaticsites.com/blog/automated-servers-and-deployments-ansible-jenkins">Automated Servers and Deployments with Ansible &amp; Jenkins</a></p>
7106-
</li>
7107-
<li>
7108-
<p><a href="http://www.catosplace.net/blog/2015/02/11/running-jenkins-in-docker-containers/">Running Jenkins in Docker Containers</a>
7109-
is a short tutorial showing how to use the official
7110-
<a href="https://registry.hub.docker.com/_/jenkins/">Jenkins container</a> on the
7111-
Docker hub.</p>
7112-
</li>
7113-
<li>
7114-
<p><a href="https://wiki.jenkins-ci.org/display/JENKINS/Securing+Jenkins">Securing Jenkins</a>
7115-
is the landing page for Jenkins security. If you're deploying your own
7116-
instance, you'll need to lock it down against unauthorized users.</p>
7117-
</li>
7118-
<li>
7119-
<p><a href="http://engineering.simondata.com/can-we-use-jenkins-for-that">Can we use Jenkins for that?</a>
7120-
looks at how one team uses Jenkins for more than typical continuous
7121-
integration situations - they also use it as an administrative interface,
7122-
cron jobs, data analytics pipelines and long-running scripts.</p>
7123-
</li>
71247105
</ul>
71257106
<h2>General continuous integration resources</h2>
71267107
<ul>
@@ -7165,6 +7146,68 @@ <h2>General continuous integration resources</h2>
71657146
environments, <a href="/integration-testing.html">integration testing</a> and
71667147
visibility into the CI results.</p>
71677148
</li>
7149+
<li>
7150+
<p><a href="https://www.blackhat.com/docs/eu-15/materials/eu-15-Mittal-Continuous-Intrusion-Why-CI-Tools-Are-An-Attackers-Best-Friend.pdf">Continuous Intrusion: Why CI tools are a hacker's best friend</a> (PDF)
7151+
strongly advises securing your continuous integration server just as you
7152+
would every other part of your production application, unless you want
7153+
your environment to be vulnerable to malicious actors.</p>
7154+
</li>
7155+
</ul>
7156+
<h1>Jenkins</h1>
7157+
<p><a href="https://jenkins.io/">Jenkins</a> is a
7158+
<a href="/continuous-integration.html">continuous integration</a> (CI) server often
7159+
used to automate building, <a href="/testing.html">testing</a> and
7160+
<a href="/deployment.html">deploying</a> Python applications.</p>
7161+
<p><a href="https://jenkins.io/" style="border: none;"><img src="/source/static/img/logos/jenkins.png" width="100%" alt="Official Jenkins CI logo. Licensed under Creative Commons Attribution-ShareAlike 3.0 Unported License." class="technical-diagram"></a></p>
7162+
<div class="well see-also">Jenkins is an implementation of the <a href="/continuous-integration.html">continuous integration</a> concept. Learn more in the <a href="/deployment.html">deployment</a> chapter or view the <a href="/table-of-contents.html">table of contents</a> for all topics.</div>
7163+
7164+
<h3>Jenkins resources</h3>
7165+
<ul>
7166+
<li>
7167+
<p><a href="https://medium.com/@mondaini/assembling-a-continuous-integration-service-for-a-django-project-on-jenkins-5f979d4c4184">Assembling a continuous integration service for a Django project on Jenkins</a>
7168+
shows how to set up a Ubuntu instance with a Jenkins server that'll build a
7169+
<a href="/django.html">Django</a> project.</p>
7170+
</li>
7171+
<li>
7172+
<p>My book on <a href="http://www.deploypython.com/">deploying Python web applications</a>
7173+
walks through every step of setting up a Jenkins project with a WSGI
7174+
application to enable continuous delivery. Take a look if you're not
7175+
grokking all of the steps provided in these other blog posts.</p>
7176+
</li>
7177+
<li>
7178+
<p><a href="http://michal.karzynski.pl/blog/2014/04/19/continuous-integration-server-for-django-using-jenkins/">Setting up Jenkins as a continuous integration server for Django</a>
7179+
is another solid tutorial that also shows how to send email notifications
7180+
as part of the build process.</p>
7181+
</li>
7182+
<li>
7183+
<p>If you're running into difficulty adding an SSH key to your Jenkins system
7184+
account so you can connect to another server or Git repository
7185+
<a href="http://dcycleproject.org/blog/51/connecting-jenkins-and-git">this blog post on connecting Jenkins with Git</a>
7186+
to get the steps to solve that problem.</p>
7187+
</li>
7188+
<li>
7189+
<p><a href="http://chromaticsites.com/blog/automated-servers-and-deployments-ansible-jenkins">Automated Servers and Deployments with Ansible &amp; Jenkins</a>
7190+
covers the benefits of using the
7191+
<a href="/configuration-management.html">configuration management tool</a> Ansible in
7192+
combination with Jenkins.</p>
7193+
</li>
7194+
<li>
7195+
<p><a href="http://www.catosplace.net/blog/2015/02/11/running-jenkins-in-docker-containers/">Running Jenkins in Docker Containers</a>
7196+
is a short tutorial showing how to use the official
7197+
<a href="https://registry.hub.docker.com/_/jenkins/">Jenkins container</a> on the
7198+
Docker hub.</p>
7199+
</li>
7200+
<li>
7201+
<p><a href="https://wiki.jenkins-ci.org/display/JENKINS/Securing+Jenkins">Securing Jenkins</a>
7202+
is the landing page for Jenkins security. If you're deploying your own
7203+
instance, you'll need to lock it down against unauthorized users.</p>
7204+
</li>
7205+
<li>
7206+
<p><a href="http://engineering.simondata.com/can-we-use-jenkins-for-that">Can we use Jenkins for that?</a>
7207+
looks at how one team uses Jenkins for more than typical continuous
7208+
integration situations - they also use it as an administrative interface,
7209+
cron jobs, data analytics pipelines and long-running scripts.</p>
7210+
</li>
71687211
</ul>
71697212
<h1>Configuration Management</h1>
71707213
<p>Configuration management involves modifying servers from an existing state to

0 commit comments

Comments
 (0)