Tehtävä 3

Tehtäväksi anto:

Tee tavallisia työpöydän asetuksia puppet moduleiksi. Laita ne versionhallintaan. Konfiguroi tyhjä kone, vaikkapa juuri bootattu live-USB, lataamalla puppet-asetukset versionhallinnasta.

Teen tehtävän kotiläppärillä USB Live Xubuntu 16.04 LTS (64-bit)

Aloitan Firefox asetuksista. Firefox joutuu käynnistämään ja sulkemaan, niin päätin kirjoittaa kommentit tänne Chrome:n kautta. Asennan Google Chrome.

Lataan 64-bit Chrome
$wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
Asennan ladatun paketin pakottamalla asentamaan riippuvuudet.
$sudo dpkg -i --force-depends google-chrome-stable_current_amd64.deb

Tuli virheilmoitus:

dpkg: google-chrome-stable: dependency problems, but configuring anyway as you requested:
google-chrome-stable depends on libappindicator1; however:
Package libappindicator1 is not installed.

Pakotan silti asentamaan:

$sudo apt-get install -f

Asennus valmis.

Muokan Firefox konfiguraatiota:

$sudoedit /etc/firefox/syspref.js

Lisän sinne rivi:

lockPref(‘browser.startup.homepage’, “http://gomummi.com”);

Kun käynnistän Firefox se aukea just täällä sivulla.

Sitten siirryn varsinaiseen tehtävän

Minun puppet module:

user@hp:~$ cd /etc/puppet/modules

user@hp:/etc/puppet/modules$ ls

user@hp:/etc/puppet/modules$ sudo mkdir firefox

user@hp:/etc/puppet/modules$ cd firefox

user@hp:/etc/puppet/modules/firefox$ sudo mkdir manifests

user@hp:/etc/puppet/modules/firefox$ cd manifests/

user:/etc/puppet/modules/firefox/manifests$ sudoedit init.pp

 

 

 

Teen kopion Firefox:in konfiguration tiedostoa moduliin ja muokkan sen:

$ sudo cp -f /etc/firefox/syspref.js /etc/puppet/modules/firefox/syspref.js

$ sudoedit /etc/puppet/modules/firefox/syspref.js

 

 

 

 

 

$ sudo puppet apply -e ‘class{firefox:}’

Error: Could not find template ‘firefox/syspref.js’ at /etc/puppet/modules/firefox/manifests/init.pp:3 on node hp.home

Error: Could not find template ‘firefox/syspref.js’ at /etc/puppet/modules/firefox/manifests/init.pp:3 on node hp.home

Verheilmoituksesta sain seville että puppet ei löydä template:ia. Luon oma templates kansio ja vien sinne syspref.js tiedoston.

user@hp:/etc/puppet/modules/firefox$ ls

manifests syspref.js

user@hp:/etc/puppet/modules/firefox$ sudo mkdir templates

user@hp:/etc/puppet/modules/firefox$ sudo cp -f syspref.js templates/syspref.js

user@hp:/etc/puppet/modules/firefox/templates$ sudo puppet apply -e ‘class{firefox:}’

Notice: Compiled catalog for hp.home in environment production in 0.26 seconds

Notice: /Stage[main]/Firefox/File[/etc/firefox/syspref.js]/content: content changed ‘{md5}94904e3bebbde58b343fddb4d9be6acc’ to ‘{md5}ae7b6316698c28c8df62997e9824b98b’

Notice: Finished catalog run in 0.09 seconds

Nyt voin poistaa vanhan syspref.js tiedoston väärästä paikasta:

user@hp:/etc/puppet/modules/firefox/templates$ cd ..

user@hp:/etc/puppet/modules/firefox$ ls

manifests syspref.js templates

user@hp:/etc/puppet/modules/firefox$ sudo rm -rf syspref.js

user@hp:/etc/puppet/modules/firefox$ ls

manifests templates

user@hp:/etc/puppet/modules/firefox$ sudo puppet apply -e ‘class{firefox:}’

Notice: Compiled catalog for hp.home in environment production in 0.24 seconds

Notice: Finished catalog run in 0.04 seconds

user@hp:/etc/puppet/modules/firefox$

Module toimii moitettomasti.

Asennan Git ja laitan sinne käyttäjän tiedot ja aika viive 1 tunti:

$ git config –global user.email “xelsinki@hotmail.com”

$ git config –global user.name “Aleksandr Pantsesnyi”

$ git config –global credential.helper “cache –timeout=3600”

Menin GitHub.com:iin, kirjauduin omaan tiliin ja loin uuden repositorin firefox. Painamalla Clone Repository sain URL:iin. https://github.com/xelsinki/firefox.git . Luon kotihakemistoon kansion git ja kloonan sinne repository GitHub.com:ista

user@hp:/etc/puppet/modules/firefox$ cd ~

user@hp:~$ mkdir git

user@hp:~$ cd git

user@hp:~/git$ git clone https://github.com/xelsinki/firefox.git

Cloning into ‘firefox’…

remote: Counting objects: 3, done.

remote: Compressing objects: 100% (2/2), done.

remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0

Unpacking objects: 100% (3/3), done.

Checking connectivity… done.

Kopioin modulini git repositoriin:

user@hp:~/git/firefox$ cp -r /etc/puppet/modules/firefox .

Huomasin että kopioin koko kansion. File Managerissa copy/paste:malla laitoin manifests ja templates kansiot oikean paikaan ja poistin tyhjän kansion. Nyt se näyttää tällaiselta.

user@hp:~/git$ tree

.

└── firefox

├── LICENSE

├── manifests

│   └── init.pp

└── templates

└── syspref.js

3 directories, 3 files

Kansiosta firefox lisään muutoksia repositoriin ja kirjoitan kommentin:

user@hp:~/git/firefox$ git add .

user@hp:~/git/firefox$ git commit

[master 07e5dd5] This is firefox puppet module for configurating a start page in firefox browser

2 files changed, 12 insertions(+)

create mode 100644 manifests/init.pp

create mode 100644 templates/syspref.js

user@hp:~/git/firefox$

Tarkistan git:

user@hp:~/git/firefox$ git log

teh-3

Lähteet:

Opettajamme ohjeet: http://terokarvinen.com/2016/publish-your-project-with-github

Git – the simple guide: http://rogerdudler.github.io/git-guide/

Markdown basic syntax: https://guides.github.com/features/mastering-markdown/#syntax

 

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *