21
TRAVIS - CI, CD L , CD P 1

Непрерывная интеграция с помощью Travis CI

  • Upload
    sqalab

  • View
    107

  • Download
    2

Embed Size (px)

Citation preview

Page 1: Непрерывная интеграция с помощью Travis CI

TRAVIS - CI, CDL, CDP

1

Page 2: Непрерывная интеграция с помощью Travis CI
Page 3: Непрерывная интеграция с помощью Travis CI

3

Артем Соковец Руководитель направления Research and Development

[email protected]

https://github.com/artsok

Page 4: Непрерывная интеграция с помощью Travis CI

СОДЕРЖАНИЕ

4

o Continuous Integration/CDL/CDP

o Travis CI

o Travis Types

o Supported Languages

o Getting Started

o Build Lifecycle

o Configuration File

o Build Status

o Build History

o Third-Party Integration

o Examples

o More CI Services

o QA

Page 5: Непрерывная интеграция с помощью Travis CI

CI/CDL/CDP

5

Page 6: Непрерывная интеграция с помощью Travis CI

TRAVIS CI

6

Travis CI — распределённый веб-сервис для сборки тестирования программного обеспечения, использующий GitHub в качестве хостинга исходного кода.

Page 7: Непрерывная интеграция с помощью Travis CI

TRAVIS CI

7

Page 8: Непрерывная интеграция с помощью Travis CI

TURN ON

8

Page 9: Непрерывная интеграция с помощью Travis CI

TRAVIS TYPES

9

Travis-ci.org Travis-ci.comopen-source projects closed-source projects

Page 10: Непрерывная интеграция с помощью Travis CI

SUPPORTED LANGUAGES

10

Programming Languages: goo.gl/RhzBjy

Page 11: Непрерывная интеграция с помощью Travis CI

VIRTUALIZATION ENVIRONMENTS

11

Page 12: Непрерывная интеграция с помощью Travis CI

BUILD LIFECYCLE

12

apt addons

cache components

before install

install

install: install any dependencies required

before script

script

before cache

after success/after failure

script: run the build script

before deploy

deploy

after deploy

after script

deploy: load to server

Page 13: Непрерывная интеграция с помощью Travis CI

CONFIGURATION FILE

13

Определяем язык и версию

Определяем переменные окружения

Подключаем интеграцию с Sauce Labs

Определяем СУБД

Запуск pre-steps

Запуск основного скрипта

Определяем ветку source

Определяем провайдера и api_tokensдля авторизации

Page 14: Непрерывная интеграция с помощью Travis CI

BUILD STATUS

14

Page 15: Непрерывная интеграция с помощью Travis CI

BUILD HISTORY

15

Integrate badge to GitHub project

Page 17: Непрерывная интеграция с помощью Travis CI

EXAMPLES: SELENIUM TEST

17

language: java

sudo: false

dist: trusty

addons:

firefox: latest

apt:

packages:

- google-chrome-stable

before_script:

- export DISPLAY=:99.0

- sh -e /etc/init.d/xvfb start &

- sleep 3

script:

- mvn test

Page 18: Непрерывная интеграция с помощью Travis CI

EXAMPLES: JDI

18

language:

java

jdk:

- oraclejdk8

sudo: false

script:

- mvn clean -f ./Java/pom.xml

- mvn compile -f ./Java/pom.xml

notifications:

email: false

addons:

apt:

packages:

- oracle-java8-installer

Page 19: Непрерывная интеграция с помощью Travis CI

EXAMPLES: DEPLOY TO MAVEN CENTRAL

19

language: java

sudo: false

dist: trusty

addons:

sonarcloud:

organization: "artsok-github"

token:

secure: $SONAR_TOKEN

cache:

directories:

- '$HOME/.m2/repository'

jdk:

- oraclejdk8

script:

- mvn test sonar:sonar

deploy:

- provider: script

script: ".travis/deploy.sh"

on:

repo: artsok/rerunner-jupiter

branch: master

- provider: script

script: ".travis/deploy.sh"

skip_cleanup: true

on:

repo: artsok/rerunner-jupiter

tags: true

Page 20: Непрерывная интеграция с помощью Travis CI

MORE CI SERVICES

20

Page 21: Непрерывная интеграция с помощью Travis CI

QA

21

Артем Соковец [email protected]

github.com/artsok/travic-test

https://goo.gl/02JHuy

http://goo.gl/UUSytn

github.com/sbtqa