Coder Social home page Coder Social logo

cmcornejocrespo / workshop-jbcn-2017 Goto Github PK

View Code? Open in Web Editor NEW
0.0 3.0 1.0 61 KB

JBCNConf 2017 Support code for the workshop

Shell 88.62% Groovy 11.38%
docker jenkins gitlab nexus continuous-integration sonarqube docker-registry openshift-origin vagrant blueocean graylog2 continuous-delivery workflow

workshop-jbcn-2017's Introduction

workshop-jbcn-2017

Code base to support the workshop

Motivation

Developers nowadays are very comfortable with software life cycle management and ceremonies around agile methodologies but the reality is that every time we need to setup a CI environment from scratch there is always struggling and suffering involved. Also the resulting environment contains a lot of moving parts that requires to have a solid mechanism to trace logs and metrics and liaising with sysadmins is out of the equation.

What is this for?

We propose a solution that aims at minimising the time-to-market by providing an ecosystem that is able to help developers and QA's to deliver fast and quality code focusing on coding itself and not in the infrastructure or the setting up of the environment required.

What´s under the hood?

  • Gitlab
    • Accesible via port 10000
  • Jenkins
    • Accesible via port 11000
  • Nexus
    • Accesible via port 12000
    • Login as admin//admin123
  • Sonarqube
    • Accesible via port 13000
  • Docker Registry
    • Accesible via port 14000
    • Login as admin//admin
  • Openshift
    • Accessible via port 8443, using HTTPS
  • Graylog
    • Accesible via port 9000
    • Login as admin//admin

System Requirements

  • Docker 17.04.0-ce+ install here
  • Docker Compose 1.12.0+ install here

For Windows Users

In order to speed up the setup of the workshop, attendants are recommended to download before hand the docker images to be used within the workshop

$ docker pull gitlab/gitlab-ce
$ docker pull jenkinsci/jenkins:lts
$ docker pull sonatype/nexus3
$ docker pull sonarqube
$ docker pull registry
$ docker pull selenium/standalone-chrome
$ docker pull openshift/origin:v1.5.1

or

$ ./pull-all-docker-images-before-the-workshop

Stack lifecycle

Run

Simply

$ docker-compose up -d

or

$ ./start

Stop

$ docker-compose up -d

or

$ ./stop

Volume Housekeeping

$ docker volume rm workshopjbcn2017_gitlab-data
$ docker volume rm workshopjbcn2017_gitlab-data-config
$ docker volume rm workshopjbcn2017_gitlab-data-logs
$ docker volume rm workshopjbcn2017_jenkins-data
$ docker volume rm workshopjbcn2017_sonarqube-data
$ docker volume rm workshopjbcn2017_nexus-data
$ docker volume rm workshopjbcn2017_registry-data

or

$ ./volume-housekeeping

Logs

$ docker-compose logs -f

or

$ ./logs

Stack lifecycle Vagrant

Change project folder path

 config.vm.synced_folder "<CHANGE_YOUR_PROJETC_PATH_HERE>", "/workshop-jbcn-2017"

Run

 $ vagrant up --provision
 $ vagrant ssh
 $ cd /workshop-jbcnconf-2017
 $ sudo ./start

Importing Code for the workshop

Replace PERSONAL_TOKEN_HERE with the one provided during the workshop

$ TOKEN=<PERSONAL_TOKEN_HERE> ./gitlab/import-github-repos.sh

External repository code

External webinar video

This workshop uses the code from an existing webinar that can be found here. This video is in spanish

License

The content of this project itself is licensed under the Attribution-NonCommercial-ShareAlike CC BY-NC-SA license alt

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.