+ All Categories
Home > Documents > Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe ...

Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe ...

Date post: 27-Sep-2020
Category:
Upload: others
View: 3 times
Download: 0 times
Share this document with a friend
70
Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe <[email protected]> whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests Acceptance-Tests Automatisierung Jenkinsfile & Repo Screenshots & Demo Ausblick Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe <[email protected]> 23. März 2017
Transcript
Page 1: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Infrastrukturtests mit der

Jenkinsfile

Christopher J. Ruwe <[email protected]>

23. März 2017

Page 2: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

whoami

Christopher J. Ruwe

freiberuflicher IT-Infrastruktur Consultant (Unix,

Netzwerke)

DevOps Engineer and Consultant

Linux, FreeBSD, Solaris

Page 3: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Test-Systematik

Page 4: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Test-Systematik

Page 5: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Test-Systematik

Page 6: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Test-Systematik

Page 7: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Test-Systematik

Page 8: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Test-Systematik

Page 9: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Test-Systematik

Page 10: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Test-Systematik

Page 11: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Test-Systematik

Page 12: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Test-Systematik

Page 13: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Test-Systematik

Page 14: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Test-Systematik

Page 15: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Test-Systematik

Page 16: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Test-Systematik

Page 17: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Test-Systematik

Page 18: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Test-Systematik

Page 19: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Test-Systematik

Page 20: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Test-Systematik

Page 21: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Test-Systematik

Page 22: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Test-Systematik

Page 23: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Test-Systematik

Page 24: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Syntaktische Tests

find manifests -name "*.pp" -print0 |

xargs -0 -n 1 puppet parser validate --noop

find manifests -name "*.yaml" -print0 |

xargs -0 -n 1 yamllint

Page 25: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Syntaktische Tests

find manifests -name "*.pp" -print0 |

xargs -0 -n 1 puppet parser validate --noop

find manifests -name "*.yaml" -print0 |

xargs -0 -n 1 yamllint

Page 26: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Checkstyle

RuboCop::RakeTask.new(:rubocop) do |t|

t.options =

[

'--display-cop-names',

'--extra-details',

'--fail-level=W',

'--require=rubocop/formatter/checkstyle_formatter',

'--format=RuboCop::Formatter::CheckstyleFormatter',

'--out=reports/xml/rubocop-checkstyle.xml',

'--format=json',

'--out=reports/json/rubocop.json',

'--format=html',

'--out=reports/html/rubocop.html',

'--format=progress',

]

end

Page 27: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Puppet Catalogue Test

http://rspec-puppet.com/tutorial/

describe 'logrotate::rule' do

let(:title) { 'nginx' }

it { is_expected.to contain_class('logrotate::rule') }

it do

is_expected.to contain_file('/etc/logrotate.d/nginx').with({

'ensure' => 'present',

'owner' => 'root',

<...>}

end

RSpec::Core::RakeTask.new(:spec) do |t|

t.pattern = 'spec/*/*_spec.rb'

end

Page 28: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Puppet Catalogue Test

http://rspec-puppet.com/tutorial/

describe 'logrotate::rule' do

let(:title) { 'nginx' }

it { is_expected.to contain_class('logrotate::rule') }

it do

is_expected.to contain_file('/etc/logrotate.d/nginx').with({

'ensure' => 'present',

'owner' => 'root',

<...>}

end

RSpec::Core::RakeTask.new(:spec) do |t|

t.pattern = 'spec/*/*_spec.rb'

end

Page 29: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Puppet Catalogue Test

http://rspec-puppet.com/tutorial/

describe 'logrotate::rule' do

let(:title) { 'nginx' }

it { is_expected.to contain_class('logrotate::rule') }

it do

is_expected.to contain_file('/etc/logrotate.d/nginx').with({

'ensure' => 'present',

'owner' => 'root',

<...>}

end

RSpec::Core::RakeTask.new(:spec) do |t|

t.pattern = 'spec/*/*_spec.rb'

end

Page 30: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Puppet Catalogue Test

describe 'role::webserver::devstage' do

it { is_expected.to contain_class('nginx') }

it { is_expected.to contain_nginx__vhost('<thevhost>') }

it { is_expected.to contain_service('nginx')

.with_ensure('running') }

Page 31: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Applikation eines

Catalogue / Play

http://kitchen.ci:

Wir erzeugen aus einem Datensatz (deklarativ!) eine

virtuelle Maschine

bundle exec kitchen create www-debian-stretch-docker

Applizieren den Code (puppet apply, ansible-play)

bundle exec kitchen converge www-debian-stretch-docker

und verfizieren das Ergebnis.

bundle exec kitchen converge www-debian-stretch-docker

Page 32: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Applikation eines

Catalogue / Play

http://kitchen.ci:

Wir erzeugen aus einem Datensatz (deklarativ!) eine

virtuelle Maschine

bundle exec kitchen create www-debian-stretch-docker

Applizieren den Code (puppet apply, ansible-play)

bundle exec kitchen converge www-debian-stretch-docker

und verfizieren das Ergebnis.

bundle exec kitchen converge www-debian-stretch-docker

Page 33: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Applikation eines

Catalogue / Play

http://kitchen.ci:

Wir erzeugen aus einem Datensatz (deklarativ!) eine

virtuelle Maschine

bundle exec kitchen create www-debian-stretch-docker

Applizieren den Code (puppet apply, ansible-play)

bundle exec kitchen converge www-debian-stretch-docker

und verfizieren das Ergebnis.

bundle exec kitchen converge www-debian-stretch-docker

Page 34: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Applikation eines

Catalogue / Play

http://kitchen.ci:

Wir erzeugen aus einem Datensatz (deklarativ!) eine

virtuelle Maschine

bundle exec kitchen create www-debian-stretch-docker

Applizieren den Code (puppet apply, ansible-play)

bundle exec kitchen converge www-debian-stretch-docker

und verfizieren das Ergebnis.

bundle exec kitchen converge www-debian-stretch-docker

Page 35: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Serverspec - :ssh remotely

describe 'Check the webserver on distant machine.' do

describe service('nginx') do

it { should be_enabled }

it { should be_running }

end

describe port(80) do

it { should be_listening.with('tcp') }

it { should be_listening.with('tcp6') }

end

describe process('nginx') do

its(:user) { should eq 'www-data' }

its(:count) { should eq 4 }

end

end

Page 36: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Serverspec - :exec locally

describe 'Check connections from localhost.' do

describe command("curl -I http://www.cruwe.de") do

its(:stdout) { should match /HTTP\/1.1 301/ }

its(:stdout) { should match /Location: https:\/\/<...>/ }

its(:stdout) { should match /Server: nginx/ }

its(:stdout) { should match /Content-Type: text\/html/ }

its(:stderr) { should match /X-Clacks-Overhead:

GNU Terry Pratchett/ }

end

end

Page 37: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Serverspec - :ssh on

various remotes

describe 'Check www from localhost.' do

<...>

end

describe 'Check app-server from frontend.' do

<...>

end

describe 'Check service bus from app-server.' do

<...>

end

describe 'Check DB from app-server.' do

<...>

end

Page 38: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Serverspec - :ssh on

various remotes

describe 'Check www from localhost.' do

<...>

end

describe 'Check app-server from frontend.' do

<...>

end

describe 'Check service bus from app-server.' do

<...>

end

describe 'Check DB from app-server.' do

<...>

end

Page 39: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Serverspec - :ssh on

various remotes

describe 'Check www from localhost.' do

<...>

end

describe 'Check app-server from frontend.' do

<...>

end

describe 'Check service bus from app-server.' do

<...>

end

describe 'Check DB from app-server.' do

<...>

end

Page 40: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Serverspec - :ssh on

various remotes

describe 'Check www from localhost.' do

<...>

end

describe 'Check app-server from frontend.' do

<...>

end

describe 'Check service bus from app-server.' do

<...>

end

describe 'Check DB from app-server.' do

<...>

end

Page 41: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Automatisierung mit

dressiertem Affen

[cjr@lamport:/home/cjr/media/src/puppet/hb22-site]

$ find manifests -name <...> (<feature>_29^33|+1)

[cjr@lamport:/home/cjr/media/src/puppet/hb22-site]

$ rspec -c -f documentation <..> (<feature>_29^33|+1)

Page 42: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Automatisierung mit

dressiertem Affen

[cjr@lamport:/home/cjr/media/src/puppet/hb22-site]

$ find manifests -name <...> (<feature>_29^33|+1)

[cjr@lamport:/home/cjr/media/src/puppet/hb22-site]

$ rspec -c -f documentation <..> (<feature>_29^33|+1)

Page 43: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

dressierter Affe „Jenkins“

Page 44: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

dressierter Affe „Jenkins“

Page 45: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

dressierter Affe „Jenkins“

Page 46: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

dressierter Affe „Jenkins“

Page 47: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

dressierter Affe „Jenkins“

Page 48: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

dressierter Affe „Jenkins“<?xml version='1.0' encoding='UTF-8'?>

<org.jenkinsci.plugins.workflow.multibranch.WorkflowMultiBranchProject plugin="[email protected]">

<actions/>

<description></description>

<properties/>

<folderViews class="com.cloudbees.hudson.plugins.folder.views.DefaultFolderViewHolder" plugin="[email protected]">

<views>

<hudson.model.AllView>

<owner class="org.jenkinsci.plugins.workflow.multibranch.WorkflowMultiBranchProject" reference="../../../.."/>

<name>All</name>

<filterExecutors>false</filterExecutors>

<filterQueue>false</filterQueue>

<properties class="hudson.model.View$PropertyList"/>

</hudson.model.AllView>

</views>

<tabBar class="hudson.views.DefaultViewsTabBar"/>

</folderViews>

<healthMetrics>

<com.cloudbees.hudson.plugins.folder.health.WorstChildHealthMetric plugin="[email protected]">

<nonRecursive>false</nonRecursive>

</com.cloudbees.hudson.plugins.folder.health.WorstChildHealthMetric>

</healthMetrics>

<icon class="com.cloudbees.hudson.plugins.folder.icons.StockFolderIcon" plugin="[email protected]"/>

<orphanedItemStrategy class="com.cloudbees.hudson.plugins.folder.computed.DefaultOrphanedItemStrategy" plugin="[email protected]">

<pruneDeadBranches>true</pruneDeadBranches>

<daysToKeep>0</daysToKeep>

<numToKeep>0</numToKeep>

</orphanedItemStrategy>

<triggers/>

<sources class="jenkins.branch.MultiBranchProject$BranchSourceList" plugin="[email protected]">

<data>

<jenkins.branch.BranchSource>

<source class="jenkins.plugins.git.GitSCMSource" plugin="[email protected]">

<id>22767748-49aa-470b-8593-695f6d9386c0</id>

<remote>https://gogs.hb22.cruwe.de:4430/hb22/hb22-site.git</remote>

<credentialsId></credentialsId>

<includes>*</includes>

<excludes></excludes>

<ignoreOnPushNotifications>false</ignoreOnPushNotifications>

</source>

<strategy class="jenkins.branch.DefaultBranchPropertyStrategy">

<properties class="empty-list"/>

</strategy>

</jenkins.branch.BranchSource>

</data>

<owner class="org.jenkinsci.plugins.workflow.multibranch.WorkflowMultiBranchProject" reference="../.."/>

</sources>

<factory class="org.jenkinsci.plugins.workflow.multibranch.WorkflowBranchProjectFactory">

<owner class="org.jenkinsci.plugins.workflow.multibranch.WorkflowMultiBranchProject" reference="../.."/>

</factory>

</org.jenkinsci.plugins.workflow.multibranch.WorkflowMultiBranchProject>

Page 49: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

dressierter Affe „Jenkins“

Page 50: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

dressierter Affe „Jenkins“

Page 51: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Jenkinsfile

stage('Validate style') {parallel(

'rubocop': {try {

sh '''#!/bin/bash -lrvm use 2.2bundle exec rake rubocop

'''

} catch (err) { } finally {step([ $class : "hudson.plugins.checkstyle.CheckStylePublisher",

failedTotalAll : '5',healthy : "95",pattern : "reports/xml/rubocop-checkstyle.xml", ]

)}

},'puppet_lint': {<..>} catch (err) {}

finally {step(

[ $class : 'WarningsPublisher',<...> ]

)}

},'yaml_lint': { <...>

Page 52: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Jenkinsfilestage('Integrate') {

try{wrap([$class: 'AnsiColorBuildWrapper', 'colorMapName': 'XTerm']) {

sh '''#!/bin/bash -lset -eset -o pipefail

rvm use 2.2

eval "$(ssh-agent)"

bundle exec kitchen create docker || truessh-add ./.kitchen/docker_id_rsabundle exec kitchen create dockerbundle exec kitchen converge dockerbundle exec kitchen verify docker

'''

}} catch (err){ } finally {

sh '''#!/bin/bash -lrvm use 2.2

bundle exec kitchen destroy docker ; rm -Rf .kitchenpkill ssh-agent

'''

junit '**/reports/xml/serverspec-result.xml'}

}

Page 53: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Jenkinsfile - Repo

Page 54: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Jenkinsfile - Repo

Page 55: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Jenkinsfile - Repo

Page 56: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Jenkinsfile - Repo

Page 57: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Jenkinsfile - Repo

Page 58: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Jenkinsfile - Repo

Page 59: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Jenkinsfile - Repo

Page 60: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Jenkinsfile - Outputs

Page 61: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Jenkinsfile - Outputs

Page 62: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Jenkinsfile - Outputs

Page 63: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Jenkinsfile - Outputs

Page 64: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Jenkinsfile - Outputs

Page 65: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Jenkinsfile - Outputs

Page 66: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Jenkinsfile - Outputs

Page 67: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Ausblick

an dieser Stelle ergeben sich weitere Möglichkeiten:

in der build-stage docker zu ersetzen und über

eine VM- oder Cloud-API oder Tools wie

Terraform et al. Maschinen zu provisionieren ist

eine Fingerübung

damit sind on-demand Testumgebungen und eng

am Code entwickelte Continuous Integration

Pipelines möglich

andere Ebene: serverspec Tests können fürs

Verfügbarkeits-Monitoring verwendet werden -

es gibt Plugins für Nagios und Sensu

Page 68: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Ausblick

an dieser Stelle ergeben sich weitere Möglichkeiten:

in der build-stage docker zu ersetzen und über

eine VM- oder Cloud-API oder Tools wie

Terraform et al. Maschinen zu provisionieren ist

eine Fingerübung

damit sind on-demand Testumgebungen und eng

am Code entwickelte Continuous Integration

Pipelines möglich

andere Ebene: serverspec Tests können fürs

Verfügbarkeits-Monitoring verwendet werden -

es gibt Plugins für Nagios und Sensu

Page 69: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Ausblick

an dieser Stelle ergeben sich weitere Möglichkeiten:

in der build-stage docker zu ersetzen und über

eine VM- oder Cloud-API oder Tools wie

Terraform et al. Maschinen zu provisionieren ist

eine Fingerübung

damit sind on-demand Testumgebungen und eng

am Code entwickelte Continuous Integration

Pipelines möglich

andere Ebene: serverspec Tests können fürs

Verfügbarkeits-Monitoring verwendet werden -

es gibt Plugins für Nagios und Sensu

Page 70: Infrastrukturtests mit der Jenkinsfile...Infrastrukturtests mit der Jenkinsfile Christopher J. Ruwe  whoami Test-Systematik „Meta“-Tests Unit-Tests Integration-Tests

Infrastrukturtests

mit der Jenkinsfile

Christopher J.

Ruwe

<[email protected]>

whoami

Test-Systematik

„Meta“-Tests

Unit-Tests

Integration-Tests

Acceptance-Tests

Automatisierung

Jenkinsfile & Repo

Screenshots &

Demo

Ausblick

Ausblick

an dieser Stelle ergeben sich weitere Möglichkeiten:

in der build-stage docker zu ersetzen und über

eine VM- oder Cloud-API oder Tools wie

Terraform et al. Maschinen zu provisionieren ist

eine Fingerübung

damit sind on-demand Testumgebungen und eng

am Code entwickelte Continuous Integration

Pipelines möglich

andere Ebene: serverspec Tests können fürs

Verfügbarkeits-Monitoring verwendet werden -

es gibt Plugins für Nagios und Sensu


Recommended