From a8049cd0d6b2745de131cfca004bef36289afc23 Mon Sep 17 00:00:00 2001 From: KaIsa9 Date: Tue, 17 Jan 2023 18:35:26 +0200 Subject: [PATCH 1/3] ALM-2030 README.MD for Jenkins lecture --- XX_Jenkins_intro/README.MD | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 XX_Jenkins_intro/README.MD diff --git a/XX_Jenkins_intro/README.MD b/XX_Jenkins_intro/README.MD new file mode 100644 index 0000000..e90180d --- /dev/null +++ b/XX_Jenkins_intro/README.MD @@ -0,0 +1,17 @@ +# Alliedium DevOps course 2022 + +# Jenkins part 1 +## Prerequisites for your local machine +1. Ubuntu linux. You can follow instructions from the [link](https://github.com/Alliedium/awesome-ansible#2-general-notes-on-creating-your-own-custom-inventory-and-playbooks) to install Ubuntu linux +2. Ansible. Please follow the step 2 of the [instructions](https://github.com/Alliedium/awesome-ansible#2-general-notes-on-creating-your-own-custom-inventory-and-playbooks) +3. Install openJdk-17 + `sudo apt update` + `sudo apt upgrade` + `sudo apt install -y openjdk-17-jdk` + +1. Clone project ansible-jenkins: + `git clone https://github.com/Alliedium/awesome-jenkins.git` +2. Follow the instructions from [link](https://github.com/Alliedium/awesome-jenkins/blob/ALM-2030_install_jenkins_and_create_job/README.md) + +### References: + 1. [Videos about CI/CD and Jenkins](https://www.youtube.com/watch?v=pMO26j2OUME&list=PLy7NrYWoggjw_LIiDK1LXdNN82uYuuuiC) From 45af418ea518c3b64cac6bfb6a204c0eac0f9229 Mon Sep 17 00:00:00 2001 From: kaisa9 Date: Tue, 14 Mar 2023 17:15:12 +0000 Subject: [PATCH 2/3] ALM-2030 README.MD for Jenkins lecture --- XX_Jenkins_intro/README.MD | 2 ++ 1 file changed, 2 insertions(+) diff --git a/XX_Jenkins_intro/README.MD b/XX_Jenkins_intro/README.MD index e90180d..bfc2552 100644 --- a/XX_Jenkins_intro/README.MD +++ b/XX_Jenkins_intro/README.MD @@ -1,6 +1,7 @@ # Alliedium DevOps course 2022 # Jenkins part 1 +Here we will install Jenkins server by means of the ansible playbook (to be continued before review) ## Prerequisites for your local machine 1. Ubuntu linux. You can follow instructions from the [link](https://github.com/Alliedium/awesome-ansible#2-general-notes-on-creating-your-own-custom-inventory-and-playbooks) to install Ubuntu linux 2. Ansible. Please follow the step 2 of the [instructions](https://github.com/Alliedium/awesome-ansible#2-general-notes-on-creating-your-own-custom-inventory-and-playbooks) @@ -15,3 +16,4 @@ ### References: 1. [Videos about CI/CD and Jenkins](https://www.youtube.com/watch?v=pMO26j2OUME&list=PLy7NrYWoggjw_LIiDK1LXdNN82uYuuuiC) + 2. [Multibranchpipelines](https://www.jenkins.io/doc/book/pipeline/multibranch/) From 6a27cf6d5d0dffdcf0f58a282bf0ae1c8d16c62d Mon Sep 17 00:00:00 2001 From: kaisa9 Date: Tue, 28 Mar 2023 14:55:10 +0000 Subject: [PATCH 3/3] ALM-2030 README.MD for Jenkins lecture --- XX_Jenkins_intro/README.MD | 15 +++++++++++---- XX_Jenkins_intro/images/jdk_alternative.png | Bin 0 -> 19927 bytes 2 files changed, 11 insertions(+), 4 deletions(-) mode change 100644 => 100755 XX_Jenkins_intro/README.MD create mode 100644 XX_Jenkins_intro/images/jdk_alternative.png diff --git a/XX_Jenkins_intro/README.MD b/XX_Jenkins_intro/README.MD old mode 100644 new mode 100755 index bfc2552..246bb39 --- a/XX_Jenkins_intro/README.MD +++ b/XX_Jenkins_intro/README.MD @@ -1,18 +1,25 @@ -# Alliedium DevOps course 2022 +# Alliedium DevOps course 2022-2023 # Jenkins part 1 Here we will install Jenkins server by means of the ansible playbook (to be continued before review) ## Prerequisites for your local machine -1. Ubuntu linux. You can follow instructions from the [link](https://github.com/Alliedium/awesome-ansible#2-general-notes-on-creating-your-own-custom-inventory-and-playbooks) to install Ubuntu linux +1. Ubuntu linux Jammy. To install You can follow instructions from the [link](https://github.com/Alliedium/awesome-ansible#2-general-notes-on-creating-your-own-custom-inventory-and-playbooks) to install Ubuntu linux 2. Ansible. Please follow the step 2 of the [instructions](https://github.com/Alliedium/awesome-ansible#2-general-notes-on-creating-your-own-custom-inventory-and-playbooks) 3. Install openJdk-17 `sudo apt update` `sudo apt upgrade` `sudo apt install -y openjdk-17-jdk` +4. If you have more than one java version, check current java version + `java --version` + If it is not the 17, list installed versions + `sudo update-java-alternatives -l` + And checkout to the 17 version + `sudo update-java-alternatives -s java-1.17.0-openjdk-amd64` -1. Clone project ansible-jenkins: +5. Clone project ansible-jenkins: `git clone https://github.com/Alliedium/awesome-jenkins.git` -2. Follow the instructions from [link](https://github.com/Alliedium/awesome-jenkins/blob/ALM-2030_install_jenkins_and_create_job/README.md) + +6. Follow the instructions from [link](https://github.com/Alliedium/awesome-jenkins/blob/ALM-2030_install_jenkins_and_create_job/README.md) ### References: 1. [Videos about CI/CD and Jenkins](https://www.youtube.com/watch?v=pMO26j2OUME&list=PLy7NrYWoggjw_LIiDK1LXdNN82uYuuuiC) diff --git a/XX_Jenkins_intro/images/jdk_alternative.png b/XX_Jenkins_intro/images/jdk_alternative.png new file mode 100644 index 0000000000000000000000000000000000000000..fb25258f1af441be620b16a194476e77b1c681d3 GIT binary patch literal 19927 zcmcG$byS?qw(i?#aCdjt;O_435+K3d-66O`aCawY;~w1I-GaMc@_lRVyY{|&-80S} z=ls!L@94MRs+u+H`OT-p6y+u0VQ^po006v{q^L3g0RHE>1{CPWJ!mSE(8mL`ourl{ z0DvL)=LQ0pk~9MVhyYTeLaJ^VzcXDkRK@1+eVtV{#`$IvLYYR9OrhfAh=jV(k>E<8 zAQcJWDuCrx<_5jTRcFA7;~n6MvBxOa2@Vn(vLc!gStv-z=x)~d(Ynq#Aq$iH)7@l3 z#*@!J;$aoPv;17Cqr#d_6O17f793-V%6x9g+K8CFGa#`)i#xN*_5J z8k}+cByQG*JFr`wg`W%0BK13}$9S<;GdGm@uPRB__leb7<<9lo)_@a_kFPxRa7y<) z3IH)`N`-B}i6`F6q9!l2(_3H!)}E z?~tC5;@=E+Wnb)fnR�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 i7!pDVA%qY@dFH=J$ZkG{wcsuQ0000