Stephan Hochdörfer //

Size: px
Start display at page:

Download "Stephan Hochdörfer //"

Transcription

1 From dev to prod with GitLab CI Stephan Hochdörfer //

2 About me Stephan Hochdörfer Head of Technology, bitexpert AG (Mannheim, #PHP, #DevOps, #Automation #phpugffm, #phpugmrn, #unkonf

3 GitLab «[...] is a web-based Git-repository manager with wiki and issue-tracking features.» - Wikipedia

4 Beyond CI/CD Source: Kharnagy CC BY-SA 4.0(Wikimedia Commons)

5 GitLab: Installation $> docker run \ --detach \ --publish 80:80 \ --publish 22:22 \ --name gitlab \ --restart always \ --volume /srv/gitlab/config:/etc/gitlab \ --volume /srv/gitlab/logs:/var/log/gitlab \ --volume /srv/gitlab/data:/var/opt/gitlab \ gitlab/gitlab-ce:latest

6 Sonatype Nexus «A single source of truth for ALL your so ware parts.» - sonatype.com

7 $> docker run \ --detach \ --publish 80:80 \ --publish 443:433 \ --name nexus \ --restart always \ bitexpert/nexus Nexus: Installation

8 Nexus Repository Manager

9 Nexus: Docker Authentication $> docker login nexus.loc Username: Password: Login Succeeded

10

11 traefik configuration defaultentrypoints = ["http", "https"] [entrypoints] [entrypoints.http] address = ":80" [entrypoints.http.redirect] entrypoint = "https" [entrypoints.https] address = ":443" [entrypoints.https.tls] [[entrypoints.https.tls.certificates]] CertFile = "/etc/traefik/ssl/myapp.loc.pem" KeyFile = "/etc/traefik/ssl/myapp.loc.key" [docker] endpoint = "unix:///var/run/docker.sock" domain = "myapp.loc" watch = true exposedbydefault = true

12 traefik: Installation $> docker run -d \ --restart=always \ --publish 8080:8080 \ --publish 80:80 \ --publish 443:443 \ -volume /var/run/docker.sock:/var/run/docker.sock \ -volume /etc/traefik/traefik.toml:/etc/traefik/traefik.toml traefik

13 GitLab: Create project

14 GitLab: Push the code $> composer create-project --repository-url= \ magento/project-community-edition my-app Installing magento/project-community-edition (2.2.4) - Installing magento/project-community-edition (2.2.4): Loading from cache Created project in my-app Loading composer repositories with package information Updating dependencies (including require-dev) Package operations: 257 installs, 0 updates, 0 removals - Installing magento/magento-composer-installer (0.1.13): Loading from cache -... Writing lock file Generating autoload files $> cd my-app $> git add -A && git commit -m "Initial Magento setup" $> git push

15 GitLab: Push the code

16 GitLab Runner «[...] is the open source project that is used to run your jobs and send the results back to GitLab. It is used in conjunction with GitLab CI [...] that coordinates the jobs.» - GitLab Runner

17 GitLab Runner: Run the daemon $> docker run \ --detach \ --name gitlab-runner \ --restart always \ --volume /srv/gitlab-runner/config:/etc/gitlab-runner \ --volume /var/run/docker.sock:/var/run/docker.sock \ gitlab/gitlab-runner:latest

18 GitLab Runner: Register new instance $> docker exec -it gitlab-runner gitlab-runner register Please enter the gitlab-ci coordinator URL (e.g. Please enter the gitlab-ci token for this runner: Please enter the gitlab-ci description for this runner: Please enter the gitlab-ci tags for this runner (comma separated): Whether to run untagged builds [true/false]: Whether to lock the Runner to current project [true/false]: Please enter the executor: docker, shell,...: Please enter the default Docker image (e.g. ruby:2.1):

19 GitLab Runner: Configuration concurrent = 4 check_interval = 0 [[runners]] name = "Docker Runner" url = " token = "50bf240bb1a7ab39e116a b" executor = "docker" [runners.docker] tls_verify = true image = "debian:stretch" privileged = false disable_cache = false volumes = [ "/home/gitlab-runner/.composer:/root/.composer:rw" ] shm_size = 0 [runners.cache]

20 GitLab: Managing secrets «GitLab CI allows you to define per-project or per-group secret variables that are set in the pipeline environment.» - GitLab

21 GitLab CI: Storing secrets

22 GitLab: Add.gitlab-ci.yml image: php:7.1-cli test: stage: test tags: - docker script: - apt-get update -q && DEBIAN_FRONTEND=noninteractive apt-get instal - docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --wi - php -r "copy(' 'setup.php');" - php -r "if (hash_file('sha384', 'composer-setup.php') === '544e09e - php setup.php --install-dir=/usr/local/bin - php -r "unlink('setup.php');" - composer.phar config \ http-basic.repo.magento.com $MAGENTO_USER $MAGENTO_PASS - composer.phar install

23 GitLab CI: Pushed configuration

24 GitLab CI: Build Pipeline

25 GitLab CI: Build Pipeline

26 GitLab CI: Build Pipeline

27 GitLab Services «[...] defines just another Docker image that is run during your job and is linked to the Docker image that the image keyword defines.» - GitLab

28 GitLab Services health check Checks which ports are exposed from the container by default Starts a special container that waits for these ports to be accessible

29 GitLab CI: Add MySQL service image: php:7.1-cli variables: MAGENTO_DATABASE: magento2 MYSQL_ROOT_PASSWORD: magento2 test: stage: test tags: - docker script: -... services: - mysql:5.6

30 GitLab CI: Add MySQL service

31 Build Pipelines «A pipeline is a group of jobs that get executed in stages (batches)» - GitLab

32 Build Pipelines (Shared config) image: php:7.1-cli variables: MAGENTO_DATABASE: magento2 MYSQL_ROOT_PASSWORD: magento2 stages: - test - build - deploy before_script: - apt-get update -q && DEBIAN_FRONTEND=noninteractive apt-get instal - docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --wi - php -r "copy(' 'setup.php');" - php -r "if (hash_file('sha384', 'composer-setup.php') === '544e09e - php setup.php --install-dir=/usr/local/bin - php -r "unlink('setup.php');" - composer.phar config http-basic.repo.magento.com $MAGENTO_USER $MA - composer.phar install

33 Build Pipelines (Test & Build) test: stage: test tags: - docker script: -... services: - mysql:5.6 build: stage: build tags: - docker script: -... services: - mysql:5.6

34 Build Pipelines (Stage Deployment) deploy_staging: stage: deploy tags: - docker-stage script: -... variables: GIT_STRATEGY: none environment: name: staging url: only: - master

35 Running your Build Pipeline

36 Running your Build Pipeline

37 Running your Build Pipeline

38 How to build the container? tar cvfz /tmp/myapp-$ci_commit_ref_slug.tgz. mv /tmp/myapp-$ci_commit_ref_slug.tgz $CI_PROJECT_DIR docker build -t myapp --build-arg package=myapp-$ci_commit_ref_slug.tgz docker tag myapp:latest nexus.loc/myapp:$ci_commit_ref_slug docker push nexus.loc/myapp:$ci_commit_ref_slug

39 Nexus: Docker Registry

40 Running your Build Pipeline

41 How to deploy the container? docker pull nexus.loc/myapp:$ci_commit_ref_slug docker stop myapp-mysql-$ci_commit_ref_slug true docker stop myapp-$ci_commit_ref_slug true docker rm myapp-mysql-$ci_commit_ref_slug true docker rm myapp-$ci_commit_ref_slug true docker run -d -P \ --name myapp-mysql-$ci_commit_ref_slug \ -v $CI_PROJECT_DIR/data/db:/var/lib/mysql mysql:5.6 docker run -d -P \ --name myapp-$ci_commit_ref_slug \ --link myapp-mysql-$ci_commit_ref_slug:mysql \ -l traefik.enable=true -l traefik.frontend.rule=host:stage.myapp.loc \ -l traefik.protocol=http \ nexus.loc/myapp:$ci_commit_ref_slug

42 ...aaaand deployed on stage!

43 Build Pipelines (Prod Deployment) deploy_prod: stage: deploy tags: - docker-prod script: -... variables: GIT_STRATEGY: none environment: name: production url: only: - master when: manual

44 Prod Deployment running

45 Prod Deployment running

46 Prod Deployment running

47 Prod Deployment running

48 ...aaaand deployed on prod!

49 Review Apps «The basis of Review Apps is the dynamic environments which allow you to create a new environment (dynamically) for each one of your branches.» - GitLab

50 Review App Build Pipeline (Start) deploy_review: stage: deploy tags: - docker-review script: -... variables: GIT_STRATEGY: none environment: name: review/$ci_commit_ref_name url: on_stop: stop_review only: - branches except: - master

51 Review App Build Pipeline (Stop) stop_review: stage: deploy tags: - docker-review script: -... variables: GIT_STRATEGY: none when: manual environment: name: review/$ci_commit_ref_name action: stop

52 Let's test the Build Pipeline! $> git checkout -b feature/force-login $> composer.phar require bitexpert/magento2-force-customer-login Using version ^3.0 for bitexpert/magento2-force-customer-login./composer.json has been updated Loading composer repositories with package information Updating dependencies (including require-dev) Package operations: 1 install, 0 updates, 0 removals - Installing bitexpert/magento2-force-customer-login (3.0.1): Loading Writing lock file Generating autoload files $> git add -A && git commit -m "Add Force Login module" $> git push

53 Merge Request! Merge Request!

54 Build Pipeline running

55 Build Pipeline finished!

56 ...aaaand Review App deployed!

57 How to deploy on stage & prod?

58 Merge kicks of Build Pipeline again...

59 ...aaaand deployed!

60 GitLab CI: Environments

61 GitLab CI: Environment History

62 Thank you! Questions? Stephan Hochdörfer Head of Technology, bitexpert AG (Mannheim, #PHP, #DevOps, #Automation #phpugffm, #phpugmrn, #unkonf

Step 1: Setup a Gitlab account

Step 1: Setup a Gitlab account Most of us agree that Continuous Integration (CI), Continuous Delivery (CD), cloud infrastructure, test automation, and configuration management make up the basics of devops. Depending on the scale of

More information

GitLab-CI and Docker Registry

GitLab-CI and Docker Registry GitLab-CI and Docker Registry Oleg Fiksel Security Consultant @ CSPI GmbH oleg.fiksel@cspi.com oleg@fiksel.info Matrix: @oleg:fiksel.info FrOSCon 2017 AGENDA ABOUT INTRODUCTION GitLab 101 Deploying on-premise

More information

Git Basi, workflow e concetti avanzati (pt2)

Git Basi, workflow e concetti avanzati (pt2) Git Basi, workflow e concetti avanzati (pt2) Andrea Fornaia, Ph.D. Department of Mathema.cs and Computer Science University of Catania Viale A.Doria, 6-95125 Catania Italy fornaia@dmi.unict.it hfp://www.cs.unict.it/~fornaia/

More information

Continuous integration & continuous delivery. COSC345 Software Engineering

Continuous integration & continuous delivery. COSC345 Software Engineering Continuous integration & continuous delivery COSC345 Software Engineering Outline Integrating different teams work, e.g., using git Defining continuous integration / continuous delivery We use continuous

More information

Linux System Management with Puppet, Gitlab, and R10k. Scott Nolin, SSEC Technical Computing 22 June 2017

Linux System Management with Puppet, Gitlab, and R10k. Scott Nolin, SSEC Technical Computing 22 June 2017 Linux System Management with Puppet, Gitlab, and R10k Scott Nolin, SSEC Technical Computing 22 June 2017 Introduction I am here to talk about how we do Linux configuration management at the Space Science

More information

Composer Best Practices Nils Private Packagist

Composer Best Practices Nils Private Packagist Composer Best Practices 2018 Private Packagist https://packagist.com 2018? Delete your lock files 2018? Delete your lock files Composer Ecosystem Reality Update 2018 Best Practices? Deployment Improving

More information

swiftenv Documentation

swiftenv Documentation swiftenv Documentation Release 1.3.0 Kyle Fuller Sep 27, 2017 Contents 1 The User Guide 3 1.1 Installation................................................ 3 1.2 Getting Started..............................................

More information

Force Login USER GUIDE

Force Login USER GUIDE Force Login for Magento 2 USER GUIDE Version 2.1 Table of Contents Introduction... 2 Authors... 2 Features... 2 Installation... 3 Post-Install... 3 System Upgrade... 3 Clear Cache... 3 How to use... 4

More information

TangeloHub Documentation

TangeloHub Documentation TangeloHub Documentation Release None Kitware, Inc. September 21, 2015 Contents 1 User s Guide 3 1.1 Managing Data.............................................. 3 1.2 Running an Analysis...........................................

More information

TM DevOps Use Case. 2017TechMinfy All Rights Reserved

TM DevOps Use Case. 2017TechMinfy All Rights Reserved Document Details Use Case Name TMDevOps Use Case04 First Draft 10 th Dec 2017 Author Reviewed By Amrendra Kumar Pradeep Narayanaswamy Contents Scope... 4 About Customer... 4 Pre-Conditions/Trigger... 4

More information

GIT. A free and open source distributed version control system. User Guide. January, Department of Computer Science and Engineering

GIT. A free and open source distributed version control system. User Guide. January, Department of Computer Science and Engineering GIT A free and open source distributed version control system User Guide January, 2018 Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Table of Contents What is

More information

TM DevOps Use Case. 2017TechMinfy All Rights Reserved

TM DevOps Use Case. 2017TechMinfy All Rights Reserved Document Details Use Case Name TMDevOps Use Case03 First Draft 01 st Dec 2017 Author Reviewed By Prabhakar D Pradeep Narayanaswamy Contents Scope... 4 About Customer... 4 Use Case Description... 4 Primary

More information

Sunil Shah SECURE, FLEXIBLE CONTINUOUS DELIVERY PIPELINES WITH GITLAB AND DC/OS Mesosphere, Inc. All Rights Reserved.

Sunil Shah SECURE, FLEXIBLE CONTINUOUS DELIVERY PIPELINES WITH GITLAB AND DC/OS Mesosphere, Inc. All Rights Reserved. Sunil Shah SECURE, FLEXIBLE CONTINUOUS DELIVERY PIPELINES WITH GITLAB AND DC/OS 1 Introduction MOBILE, SOCIAL & CLOUD ARE RAISING CUSTOMER EXPECTATIONS We need a way to deliver software so fast that our

More information

Implementation of Continuous Integration for Linux Images

Implementation of Continuous Integration for Linux Images Implementation of Continuous Integration for Linux Images Jérôme Belleman, Linux Support Team HEPiX Fall 2017 Implementation of CI for Linux Images 2 Context HEPiX Fall 2017 Implementation of CI for Linux

More information

Bitte decken Sie die schraffierte Fläche mit einem Bild ab. Please cover the shaded area with a picture. (24,4 x 7,6 cm)

Bitte decken Sie die schraffierte Fläche mit einem Bild ab. Please cover the shaded area with a picture. (24,4 x 7,6 cm) Bitte decken Sie die schraffierte Fläche mit einem Bild ab. Please cover the shaded area with a picture. (24,4 x 7,6 cm) Continuous Integration / Continuous Testing Seminary IIC Requirements Java SE Runtime

More information

Getting Started With Amazon EC2 Container Service

Getting Started With Amazon EC2 Container Service Getting Started With Amazon EC2 Container Service Emeka Igbokwe Solution Architect 2015, Amazon Web Services, Inc. or its affiliates. All rights reserved Agenda Containers EC2 Container Service EC2 Container

More information

Arup Nanda VP, Data Services Priceline.com

Arup Nanda VP, Data Services Priceline.com Jumpstarting Docker Arup Nanda VP, Data Services Priceline.com My application worked in Dev but not in QA Will it work in production? I need an environment right now No, I can t wait for 2 weeks I just

More information

Managing Network Configurations with Git and GitLab

Managing Network Configurations with Git and GitLab Managing Network Configurations with Git and GitLab Matthew DeNapoli Developer Advocate, DevNet Twitter: @thedenap Season 1, Workshop 3 https://developer.cisco.com/netdevops/live What are we going to talk

More information

" Qué me estás container?" Docker for dummies

 Qué me estás container? Docker for dummies " Qué me estás container?" Docker for dummies Sara Arjona @sara_arjona Pau Ferrer @crazyserver Developer at Moodle HQ Moodle Mobile developer at Moodle HQ #MootES18 Who uses Docker for development? Who

More information

Continuous Integration and Deployment (CI/CD)

Continuous Integration and Deployment (CI/CD) WHITEPAPER OCT 2015 Table of contents Chapter 1. Introduction... 3 Chapter 2. Continuous Integration... 4 Chapter 3. Continuous Deployment... 6 2 Chapter 1: Introduction Apcera Support Team October 2015

More information

From development to production

From development to production David Barbarin From development to production BIG Thanks to SQLSatMadrid sponsors Platinum Gold > whoami David Barbarin Senior Consultant Architecture, Performance and high availability @mikedavem David

More information

NetApp Jenkins Plugin Documentation

NetApp Jenkins Plugin Documentation NetApp Jenkins Plugin Documentation Release 2.0 Akshay Patil Aug 22, 2017 Contents 1 Contents 3 1.1 Pre-Requisites.............................................. 3 1.2 Configuration...............................................

More information

Advanced Continuous Delivery Strategies for Containerized Applications Using DC/OS

Advanced Continuous Delivery Strategies for Containerized Applications Using DC/OS Advanced Continuous Delivery Strategies for Containerized Applications Using DC/OS ContainerCon @ Open Source Summit North America 2017 Elizabeth K. Joseph @pleia2 1 Elizabeth K. Joseph, Developer Advocate

More information

Continuous Delivery the hard way with Kubernetes. Luke Marsden, Developer

Continuous Delivery the hard way with Kubernetes. Luke Marsden, Developer Continuous Delivery the hard way with Luke Marsden, Developer Experience @lmarsden Agenda 1. Why should I deliver continuously? 2. primer 3. GitLab primer 4. OK, so we ve got these pieces, how are we going

More information

Git. Charles J. Geyer School of Statistics University of Minnesota. Stat 8054 Lecture Notes

Git. Charles J. Geyer School of Statistics University of Minnesota. Stat 8054 Lecture Notes Git Charles J. Geyer School of Statistics University of Minnesota Stat 8054 Lecture Notes 1 Before Anything Else Tell git who you are. git config --global user.name "Charles J. Geyer" git config --global

More information

Php4u Payment Restrictions Module for Magento 2

Php4u Payment Restrictions Module for Magento 2 Php4u Payment Restrictions Module for Magento 2 Requirements : Magento 2.0.x or 2.1.x Version 1.0.0 for Magento 2 1 Installation...3 1.1 Manual Install... 3 1.2 Composer install...4 2. Configuration...5

More information

Portainer Documentation

Portainer Documentation Portainer Documentation Release 1.16.1 Portainer.io Jan 23, 2018 Contents 1 Deployment 3 1.1 Quick start................................................ 3 1.2 Manage a new Docker environment...................................

More information

DEVNET Introduction to Git. Ashley Roach Principal Engineer Evangelist

DEVNET Introduction to Git. Ashley Roach Principal Engineer Evangelist DEVNET-1080 Introduction to Git Ashley Roach Principal Engineer Evangelist Twitter: @aroach Email: asroach@cisco.com Cisco Spark How Questions? Use Cisco Spark to communicate with the speaker after the

More information

vrealize Code Stream Trigger for Git

vrealize Code Stream Trigger for Git vrealize Code Stream 2.3 This document supports the version of each product listed and supports all subsequent versions until the document is replaced by a new edition. To check for more recent editions

More information

Handel-CodePipeline Documentation

Handel-CodePipeline Documentation Handel-CodePipeline Documentation Release 0.0.6 David Woodruff Dec 11, 2017 Getting Started 1 Introduction 3 2 Installation 5 3 Tutorial 7 4 Using Handel-CodePipeline 11 5 Handel-CodePipeline File 13

More information

Index. Chaminda Chandrasekara 2017 C. Chandrasekara, Beginning Build and Release Management with TFS 2017 and VSTS, DOI /

Index. Chaminda Chandrasekara 2017 C. Chandrasekara, Beginning Build and Release Management with TFS 2017 and VSTS, DOI / Index A Agent platforms, 10 system and user capabilities, 10 Agent pool add user, 12 assign permissions, 55 56 default pool, 8 hosted Linux pool, 8 hosted pool, 7 set up assign administrator role, 45 auto-provision

More information

Tenable.io Container Security. Last Updated: November 02, 2018

Tenable.io Container Security. Last Updated: November 02, 2018 Tenable.io Container Security Last Updated: November 02, 2018 Table of Contents Tenable.io Container Security 1 Welcome to Tenable.io Container Security 4 Get Started with Tenable.io Container Security

More information

DGX-1 DOCKER USER GUIDE Josh Park Senior Solutions Architect Contents created by Jack Han Solutions Architect

DGX-1 DOCKER USER GUIDE Josh Park Senior Solutions Architect Contents created by Jack Han Solutions Architect DGX-1 DOCKER USER GUIDE 17.08 Josh Park Senior Solutions Architect Contents created by Jack Han Solutions Architect AGENDA Introduction to Docker & DGX-1 SW Stack Docker basic & nvidia-docker Docker image

More information

TM DevOps Use Case TechMinfy All Rights Reserved

TM DevOps Use Case TechMinfy All Rights Reserved Document Details Use Case Name TMDevOps Use Case01 First Draft 5 th March 2018 Author Reviewed By Prabhakar D Pradeep Narayanaswamy Contents Scope... 4 About Customer... 4 Use Case Description... 4 Primary

More information

Run containerized applications from pre-existing images stored in a centralized registry

Run containerized applications from pre-existing images stored in a centralized registry Introduction This examination is based upon the most critical job activities a Docker Certified Associate performs. The skills and knowledge certified by this examination represent a level of expertise

More information

DEVOPS COURSE CONTENT

DEVOPS COURSE CONTENT LINUX Basics: Unix and linux difference Linux File system structure Basic linux/unix commands Changing file permissions and ownership Types of links soft and hard link Filter commands Simple filter and

More information

Continuous Integration using Docker & Jenkins

Continuous Integration using Docker & Jenkins Jenkins LinuxCon Europe 2014 October 13-15, 2014 Mattias Giese Solutions Architect giese@b1-systems.de - Linux/Open Source Consulting, Training, Support & Development Introducing B1 Systems founded in

More information

MODERN APPLICATION ARCHITECTURE DEMO. Wanja Pernath EMEA Partner Enablement Manager, Middleware & OpenShift

MODERN APPLICATION ARCHITECTURE DEMO. Wanja Pernath EMEA Partner Enablement Manager, Middleware & OpenShift MODERN APPLICATION ARCHITECTURE DEMO Wanja Pernath EMEA Partner Enablement Manager, Middleware & OpenShift COOLSTORE APPLICATION COOLSTORE APPLICATION Online shop for selling products Web-based polyglot

More information

By: Jeeva S. Chelladhurai

By: Jeeva S. Chelladhurai CI CD By: Jeeva S. Chelladhurai Tools SCM: www.github.com CI/CD: Jenkins 2.0 Important Plugins: Pipeline (for Jenkinsfile), git, github, SSH Slaves (for build slave) Platform: docker Container Orchestration:

More information

Accelerate at DevOps Speed With Openshift v3. Alessandro Vozza & Samuel Terburg Red Hat

Accelerate at DevOps Speed With Openshift v3. Alessandro Vozza & Samuel Terburg Red Hat Accelerate at DevOps Speed With Openshift v3 Alessandro Vozza & Samuel Terburg Red Hat IT (R)Evolution Red Hat Brings It All Together What is Kubernetes Open source container cluster manager Inspired by

More information

Deploy Early, Deploy Often, Deploy Safely Andy Lowe

Deploy Early, Deploy Often, Deploy Safely Andy Lowe Deploy Early, Deploy Often, Deploy Safely Andy Lowe From User Story to Production Feature Basic Process Write Some Code Commit Automated UAT Deploy Acceptance Prod Tests Deploy Then There s All The Other

More information

DevOps Workflow. From 0 to kube in 60 min. Christian Kniep, v Technical Account Manager, Docker Inc.

DevOps Workflow. From 0 to kube in 60 min.   Christian Kniep, v Technical Account Manager, Docker Inc. DevOps Workflow From 0 to kube in 60 min http://qnib.org/devops-workflow Christian Kniep, v2018-02-20 Technical Account Manager, Docker Inc. Motivation Iteration barriers Works on my Laptop! Why is DevOps

More information

Table of Contents. Configure and Manage Logging in to the Management Portal Verify and Trust Certificates

Table of Contents. Configure and Manage Logging in to the Management Portal Verify and Trust Certificates Table of Contents Configure and Manage Logging in to the Management Portal Verify and Trust Certificates Configure System Settings Add Cloud Administrators Add Viewers, Developers, or DevOps Administrators

More information

Strengthen and Scale security using DevSecOps

Strengthen and Scale security using DevSecOps OWASP Indonesia Meetup Strengthen and Scale security using DevSecOps $ www.teachera.io!"# @secfigo % secfigo@gmail.com # whoami Author, Speaker and Community Leader. Speaker/Trainer at Blackhat, AppSec EU,

More information

Red Hat OpenShift Application Runtimes 0.1

Red Hat OpenShift Application Runtimes 0.1 Red Hat OpenShift Application Runtimes 0.1 Install and Configure the developers.redhat.com/launch Application on a Single-node OpenShift Cluster For Use with Red Hat OpenShift Application Runtimes Last

More information

Bitnami Ruby for Huawei Enterprise Cloud

Bitnami Ruby for Huawei Enterprise Cloud Bitnami Ruby for Huawei Enterprise Cloud Description Bitnami Ruby Stack provides a complete development environment for Ruby on Rails that can be deployed in one click. It includes most popular components

More information

Version Control Systems

Version Control Systems Nothing to see here. Everything is under control! September 16, 2015 Change tracking File moving Teamwork Undo! Undo! UNDO!!! What strategies do you use for tracking changes to files? Change tracking File

More information

Creating pipelines that build, test and deploy containerized artifacts Slides: Tom Adams

Creating pipelines that build, test and deploy containerized artifacts Slides:   Tom Adams Creating pipelines that build, test and deploy containerized artifacts Slides: https://goo.gl/2mzfe6 Tom Adams tadams@thoughtworks.com 1 Who I am Tom Adams Tech Lead tadams@thoughtworks.com http://tadams289.blogspot.com

More information

Continuous Delivery for Cloud Native Applications

Continuous Delivery for Cloud Native Applications Continuous Delivery for Cloud Native Applications Cyrille Le Clerc, Director, Product Management at CloudBees Bjorn Boe, Senior Field Engineer at Pivotal Software Speakers /Cyrille Le Clerc Product Manager

More information

Change-sets. Basavaraj Karadakal

Change-sets. Basavaraj Karadakal Change-sets Basavaraj Karadakal (bkrdkl@juniper.net) Development environment Component based development model. Developers spread across multiple sites. Over 800 components. Over 500 repos. Repos nested

More information

Git Command Line Tool Is Not Installed

Git Command Line Tool Is Not Installed Git Command Line Tool Is Not Installed Make Sure It Is Accessible On Y Error: "git" command line tool is not installed: make sure it is accessible on y I have installed git tool. even in git bash its showing

More information

Anchore Container Image Scanner Plugin

Anchore Container Image Scanner Plugin Anchore Container Image Scanner Plugin Plugin Information View Anchore Container Image Scanner on the plugin site for more information. Older versions of this plugin may not be safe to use. Please review

More information

Simplified CICD with Jenkins and Git on the ZeroStack Platform

Simplified CICD with Jenkins and Git on the ZeroStack Platform DATA SHEET Simplified CICD with Jenkins and Git on the ZeroStack Platform In the technical article we will walk through an end to end workflow of starting from virtually nothing and establishing a CICD

More information

Red Hat Quay 2.9 Deploy Red Hat Quay - Basic

Red Hat Quay 2.9 Deploy Red Hat Quay - Basic Red Hat Quay 2.9 Deploy Red Hat Quay - Basic Deploy Red Hat Quay Last Updated: 2018-09-14 Red Hat Quay 2.9 Deploy Red Hat Quay - Basic Deploy Red Hat Quay Legal Notice Copyright 2018 Red Hat, Inc. The

More information

Red Hat OpenShift Application Runtimes 1

Red Hat OpenShift Application Runtimes 1 Red Hat OpenShift Application Runtimes 1 Install and Configure the Fabric8 Launcher Tool For Use with Red Hat OpenShift Application Runtimes Last Updated: 2018-03-09 Red Hat OpenShift Application Runtimes

More information

GIT VERSION CONTROL TUTORIAL. William Wu 2014 October 7

GIT VERSION CONTROL TUTORIAL. William Wu 2014 October 7 GIT VERSION CONTROL TUTORIAL William Wu w@qed.ai 2014 October 7 ABOUT ME Scientific Computing Specialist background: math, cs, ee interests: machine learning, DSP, imaging, data viz, cloud work: various

More information

Ansible Cookbook 2014

Ansible Cookbook 2014 René Moser Tue Nov 25 23:13:45 UTC 2014 1 Contents Contents Intro 4 Basics 5 How do I use all hosts data in my play or template? 6 Solution................................................... 6 Explanation.................................................

More information

Git Guide. Meher Krishna Patel. Created on : Octorber, 2017 Last updated : October, More documents are freely available at PythonDSP

Git Guide. Meher Krishna Patel. Created on : Octorber, 2017 Last updated : October, More documents are freely available at PythonDSP Git Guide Meher Krishna Patel Created on : Octorber, 2017 Last updated : October, 2018 More documents are freely available at PythonDSP Table of contents Table of contents i 1 Commands Summary 1 2 Git

More information

Set up, Configure, and Use Docker on Local Dev Machine

Set up, Configure, and Use Docker on Local Dev Machine Set up, Configure, and Use Docker on Local Dev Machine Table of Contents Set up, Configure, and Use Docker on Local Dev Machine... 1 1. Introduction... 2 1.1 Major Docker Components... 2 1.2 Tools Installed

More information

Technical Manual. Software Quality Analysis as a Service (SQUAAD) Team No.1. Implementers: Aleksandr Chernousov Chris Harman Supicha Phadungslip

Technical Manual. Software Quality Analysis as a Service (SQUAAD) Team No.1. Implementers: Aleksandr Chernousov Chris Harman Supicha Phadungslip Technical Manual Software Quality Analysis as a Service (SQUAAD) Team No.1 Implementers: Aleksandr Chernousov Chris Harman Supicha Phadungslip Testers: Kavneet Kaur Reza Khazali George Llames Sahar Pure

More information

Django MFA Documentation

Django MFA Documentation Django MFA Documentation Release 1.0 Micro Pyramid Sep 20, 2018 Contents 1 Getting started 3 1.1 Requirements............................................... 3 1.2 Installation................................................

More information

Dockerfile Best Practices

Dockerfile Best Practices Dockerfile Best Practices OpenRheinRuhr 2015 November 07th, 2015 1 Dockerfile Best Practices Outline About Dockerfile Best Practices Building Images This work is licensed under the Creative Commons Attribution-ShareAlike

More information

AEM Code Promotion and Content Synchronization Best Practices

AEM Code Promotion and Content Synchronization Best Practices AEM Code Promotion and Content Synchronization Best Practices Ian Reasor, Technical Architect, Adobe Partner Experience Introduction When considering the movement of content through environments in an

More information

School of Computing Science Gitlab Platform - User Notes

School of Computing Science Gitlab Platform - User Notes School of Computing Science Gitlab Platform - User Notes Contents Using Git & Gitlab... 1 Introduction... 1 Access Methods... 2 Web Access... 2 Repository Access... 2 Creating a key pair... 2 Adding a

More information

USING GIT FOR AUTOMATION AND COLLABORATION JUSTIN ELLIOTT - MATT HANSEN PENN STATE UNIVERSITY

USING GIT FOR AUTOMATION AND COLLABORATION JUSTIN ELLIOTT - MATT HANSEN PENN STATE UNIVERSITY USING GIT FOR AUTOMATION AND COLLABORATION JUSTIN ELLIOTT - MATT HANSEN PENN STATE UNIVERSITY AGENDA Version control overview Introduction and basics of Git Advanced Git features Collaboration Automation

More information

KERNEL C.I. USING LINARO S AUTOMATED VALIDATION ARCHITECTURE. Wednesday, September 11, 13

KERNEL C.I. USING LINARO S AUTOMATED VALIDATION ARCHITECTURE. Wednesday, September 11, 13 KERNEL C.I. USING LINARO S AUTOMATED VALIDATION ARCHITECTURE TYLER BAKER TECHNICAL ARCHITECT HTTP://WWW.LINARO.ORG LAVA DEVELOPER LAVA EVANGELIST FORMER PLATFORM ENGINEER KERNEL HACKER MT. BAKER, WA LAVA

More information

Implementing the Twelve-Factor App Methodology for Developing Cloud- Native Applications

Implementing the Twelve-Factor App Methodology for Developing Cloud- Native Applications Implementing the Twelve-Factor App Methodology for Developing Cloud- Native Applications By, Janakiram MSV Executive Summary Application development has gone through a fundamental shift in the recent past.

More information

Cloud providers, tools and best practices in running Magento on Kubernetes. Adrian Balcan MindMagnet Software

Cloud providers, tools and best practices in running Magento on Kubernetes. Adrian Balcan MindMagnet Software Cloud providers, tools and best practices in running Magento on Kubernetes Adrian Balcan DevOps @ MindMagnet Software About Me Companies Projects Adrian Balcan contact@adrianbalcan.com Agenda Magento on

More information

Lab 01 How to Survive & Introduction to Git. Web Programming DataLab, CS, NTHU

Lab 01 How to Survive & Introduction to Git. Web Programming DataLab, CS, NTHU Lab 01 How to Survive & Introduction to Git Web Programming DataLab, CS, NTHU Notice These slides will focus on how to submit you code by using Git command line You can also use other Git GUI tool or built-in

More information

PHPUnit, PhpStorm and GitLab Continuous Integration. Christian Bläul

PHPUnit, PhpStorm and GitLab Continuous Integration. Christian Bläul PHPUnit, PhpStorm and GitLab Continuous Integration Christian Bläul Software validation & Integration tests Automated picture generation Photos, PDFs, Export files are the test result: Fixate target values,

More information

Using the Bluemix CLI IBM Corporation

Using the Bluemix CLI IBM Corporation Using the Bluemix CLI After you complete this section, you should understand: How to use the bx Bluemix command-line interface (CLI) to manage applications bx commands help you do tasks such as: Log in

More information

what's in it for me? Ian Truslove :: Boulder Linux User Group ::

what's in it for me? Ian Truslove :: Boulder Linux User Group :: what's in it for me? Ian Truslove :: Boulder Linux User Group :: 2014-03-13 First: the end Docker: What s in it for me? Devs: http://xkcd.com/303/ DevOps: http://xkcd.com/149/ Docker: What s in it for

More information

Submitting your Work using GIT

Submitting your Work using GIT Submitting your Work using GIT You will be using the git distributed source control system in order to manage and submit your assignments. Why? allows you to take snapshots of your project at safe points

More information

Azure DevOps. Randy Pagels Intelligent Cloud Technical Specialist Great Lakes Region

Azure DevOps. Randy Pagels Intelligent Cloud Technical Specialist Great Lakes Region Azure DevOps Randy Pagels Intelligent Cloud Technical Specialist Great Lakes Region What is DevOps? People. Process. Products. Build & Test Deploy DevOps is the union of people, process, and products to

More information

Automatic MySQL Schema Management with Skeema. Evan Elias Percona Live, April 2017

Automatic MySQL Schema Management with Skeema. Evan Elias Percona Live, April 2017 Automatic MySQL Schema Management with Skeema Evan Elias Percona Live, April 2017 What is Schema Management? Organize table schemas in a repo Execution of all DDL, on the correct MySQL instances, with

More information

GitLab-CI for FPGA development at LHCb 21/11/2018 CERN ELECTRONICS USERS GROUP - GITLAB CI FOR FPGAS 1

GitLab-CI for FPGA development at LHCb 21/11/2018 CERN ELECTRONICS USERS GROUP - GITLAB CI FOR FPGAS 1 GitLab-CI for FPGA development at LHCb 21/11/2018 CERN ELECTRONICS USERS GROUP - GITLAB CI FOR FPGAS 1 The EP/LBC (Online) group 21/11/2018 CERN ELECTRONICS USERS GROUP - GITLAB CI FOR FPGAS 2 GitLab-CI

More information

OpenShift 3 Technical Architecture. Clayton Coleman, Dan McPherson Lead Engineers

OpenShift 3 Technical Architecture. Clayton Coleman, Dan McPherson Lead Engineers OpenShift 3 Technical Architecture Clayton Coleman, Dan McPherson Lead Engineers Principles The future of *aas Redefine the Application Networked components wired together Not just a web frontend anymore

More information

Configuring Local Authentication and Authorization

Configuring Local Authentication and Authorization Configuring Local Authentication and Authorization Finding Feature Information, page 1 How to Configure Local Authentication and Authorization, page 1 Monitoring Local Authentication and Authorization,

More information

Red Hat Quay 2.9 Deploy Red Hat Quay on OpenShift

Red Hat Quay 2.9 Deploy Red Hat Quay on OpenShift Red Hat Quay 2.9 Deploy Red Hat Quay on OpenShift Deploy Red Hat Quay on OpenShift Last Updated: 2019-03-11 Red Hat Quay 2.9 Deploy Red Hat Quay on OpenShift Deploy Red Hat Quay on OpenShift Legal Notice

More information

AZURE CONTAINER INSTANCES

AZURE CONTAINER INSTANCES AZURE CONTAINER INSTANCES -Krunal Trivedi ABSTRACT In this article, I am going to explain what are Azure Container Instances, how you can use them for hosting, when you can use them and what are its features.

More information

Revision Control and GIT

Revision Control and GIT Revision Control and GIT On UD HPC Community Clusters William Totten Network & Systems Services Why use revision control You can go back in time It makes it easy to try things out which might not work

More information

More Dev / Less Ops. Sean Dietrich DrupalCorn '18

More Dev / Less Ops. Sean Dietrich DrupalCorn '18 More Dev / Less Ops Sean Dietrich DrupalCorn '18 Hi there! I m a Technical Lead at Kanopi Studios. @seanedietrich / sean_e_dietrich / sean.e.dietrich Maintainer on the Docksal Project Drupal Development

More information

Bitnami Pimcore for Huawei Enterprise Cloud

Bitnami Pimcore for Huawei Enterprise Cloud Bitnami Pimcore for Huawei Enterprise Cloud Description Pimcore is the open source platform for managing digital experiences. It is the consolidated platform for web content management, product information

More information

Midterm Presentation Schedule

Midterm Presentation Schedule Midterm Presentation Schedule October 18 th Aurora, Bash, Sangam October 20 th Flash, Omega, CodeRing October 25th Omni, Aviato, NPComplete Mid Term Presentation Format 25 minutes Be prepared to use the

More information

SBB. Java User Group 27.9 & Tobias Denzler, Philipp Oser

SBB. Java User Group 27.9 & Tobias Denzler, Philipp Oser OpenShift @ SBB Java User Group 27.9 & 25.10.17 Tobias Denzler, Philipp Oser Who we are Tobias Denzler Software Engineer at SBB IT Java & OpenShift enthusiast @tobiasdenzler Philipp Oser Architect at ELCA

More information

Composer and Drupal. CIDUG Meeting December 13, 2018 John Rearick

Composer and Drupal. CIDUG Meeting December 13, 2018 John Rearick Composer and Drupal CIDUG Meeting December 13, 2018 John Rearick * Similar to other dependency managers such as: yum, apt, brew, macports, npm, pip, etc. * Helps manage dependency hell. * Lots of dependencies

More information

Software Development I

Software Development I 6.148 Software Development I Two things How to write code for web apps. How to collaborate and keep track of your work. A text editor A text editor A text editor Anything that you re used to using Even

More information

Docker Enterprise Edition 2.0 Platform Public Beta Install and Exercises Guide

Docker Enterprise Edition 2.0 Platform Public Beta Install and Exercises Guide Docker Enterprise Edition 2.0 Platform Public Beta Install and Exercises Guide Welcome to the Docker EE 2.0 Public Beta! Below you will find installation instructions as well as series of exercises to

More information

GETTING TO KNOW GIT: PART II JUSTIN ELLIOTT PENN STATE UNIVERSITY

GETTING TO KNOW GIT: PART II JUSTIN ELLIOTT PENN STATE UNIVERSITY GETTING TO KNOW GIT: PART II JUSTIN ELLIOTT PENN STATE UNIVERSITY 1 REVERTING CHANGES 2 REVERTING CHANGES Change local files git reset git checkout Revert a commit in the branch history git revert Reset

More information

Dockerfile & docker CLI Cheat Sheet

Dockerfile & docker CLI Cheat Sheet Dockerfile & docker CLI Cheat Sheet Table of Contents Introduction 1 1. docker CLI Engine 2 1.1 Container Related s 2 1.2 Image Related s 4 1.3 Network Related s 5 1.4 Registry Related s 6 1.5 Volume Related

More information

LENS Server Maintenance Guide JZ 2017/07/28

LENS Server Maintenance Guide JZ 2017/07/28 LENS Server Maintenance Guide JZ 2017/07/28 Duty Maintain LENS server with minimum downtime Patch critical vulnerabilities Assist LAB member for using the LENS services Evaluate for custom requirements

More information

AWS Amplify: Console User Guide

AWS Amplify: Console User Guide AWS Amplify Console User Guide AWS Amplify: Console User Guide Copyright 2018 Amazon Web Services, Inc. and/or its affiliates. All rights reserved. Amazon's trademarks and trade dress may not be used in

More information

Git. SSE2034: System Software Experiment 3, Fall 2018, Jinkyu Jeong

Git. SSE2034: System Software Experiment 3, Fall 2018, Jinkyu Jeong Git Prof. Jinkyu Jeong (Jinkyu@skku.edu) TA -- Minwoo Ahn (minwoo.ahn@csl.skku.edu) TA -- Donghyun Kim (donghyun.kim@csl.skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu

More information

Which compute option is designed for the above scenario? A. OpenWhisk B. Containers C. Virtual Servers D. Cloud Foundry

Which compute option is designed for the above scenario? A. OpenWhisk B. Containers C. Virtual Servers D. Cloud Foundry 1. A developer needs to create support for a workload that is stateless and short-living. The workload can be any one of the following: - API/microservice /web application implementation - Mobile backend

More information

Configuration Management: Stability in Your Pipeline sascha bates. Saturday, November 2, 13

Configuration Management: Stability in Your Pipeline sascha bates. Saturday, November 2, 13 Configuration Management: Stability in Your Pipeline sascha bates sascha bates blog.brattyredhead.com Twin Cities Infracoders Meetup @sascha_d The Ship Show Podcast Automation Consultant sascha@opscode.com

More information

Build & Launch Tools (BLT) Automating best practices for enterprise sites

Build & Launch Tools (BLT) Automating best practices for enterprise sites Build & Launch Tools (BLT) Automating best practices for enterprise sites Who are you? Matthew Grasmick @grasmash on Drupal.org, twitter, etc. Acquia Professional Services, 4yrs Drupalist, 9yrs Maintainer

More information

Garment Documentation

Garment Documentation Garment Documentation Release 0.1 Evan Borgstrom March 25, 2014 Contents i ii A collection of fabric tasks that roll up into a single deploy function. The whole process is coordinated through a single

More information

Containers, Serverless and Functions in a nutshell. Eugene Fedorenko

Containers, Serverless and Functions in a nutshell. Eugene Fedorenko Containers, Serverless and Functions in a nutshell Eugene Fedorenko About me Eugene Fedorenko Senior Architect Flexagon adfpractice-fedor.blogspot.com @fisbudo Agenda Containers Microservices Docker Kubernetes

More information

FROM VSTS TO AZURE DEVOPS

FROM VSTS TO AZURE DEVOPS #DOH18 FROM VSTS TO AZURE DEVOPS People. Process. Products. Gaetano Paternò @tanopaterno info@gaetanopaterno.it 2 VSTS #DOH18 3 Azure DevOps Azure Boards (ex Work) Deliver value to your users faster using

More information

ci-management Release 1.0.0

ci-management Release 1.0.0 ci-management Release 1.0.0 Nov 13, 2018 CI Process 1 Summary 1 2 Finding Help on Hyperledger CI 3 3 Common Job Types 5 4 Verify Jobs 7 5 Merge Jobs 9 6 Release Jobs 11 7 Supported Architectures 13 8

More information