using continuouspipe to speed up our workflows
TRANSCRIPT
Speedup our workflowby using ContinuousPipe
@samuelroze
@samuelroze
These few technical problems
@samuelroze
Sprint 0
@samuelroze
Consistency
@samuelroze
I believe this is an old problem
@samuelroze
Containers
@samuelroze
@samuelroze
We want a Docker configuration
@samuelroze
Dockerfile
# Base imageFROM php:5.6-apache
# Install composerRUN curl -sS https://getcomposer.org/installer | php \ && mv composer.phar /usr/bin/composer
# Add the applicationADD . /appWORKDIR /app
# Install dependenciesRUN composer install -o
@samuelroze
docker-compose.yml
web: build: . links: - mysql expose: - 80 volumes: - .:/app
mysql: image: mysql environment: MYSQL_ROOT_PASSWORD: root expose: - 3306
@samuelroze
How do we deploy them?with ContinuousPipe
@samuelroze
continuous-pipe.ymltasks: images: build: services: api: image: docker.io/sroze/docker-example
deployment: deploy: cluster: fra-01 services: api: specification: accessibility: from_external: true mysql: locked: true
@samuelroze
@samuelroze
@samuelroze
@samuelroze
@samuelroze
Done !
@samuelroze
@samuelroze
Speed problems
@samuelroze
An environment
4 Few environments(staging, UAT, ..., production)
4 All features at the same time
4 No real room for experiment
@samuelroze
@samuelroze
Code Repository
4 Commits
4 Branches
Steps
4 Open pull-request
4 Feedback
4 Merge/Close pull-request
@samuelroze
Project Lifecycle
4 Actions
4 Decisions
Steps
4 Build
4 Measure
4 Learn
@samuelroze
How good is our change?
@samuelroze
@samuelroze
@samuelroze
@samuelroze
@samuelroze
@samuelroze
@samuelroze
An environmentper feature
4 QA don't have to wait the staging deployment
4 Client don't have to wait
That means...
4 Faster feedbacks
4 Less risks
@samuelroze
@samuelroze
That allows us many future options.
@samuelroze
@samuelroze
A/B testing
Let's simply ask the final users.
Explicitly- Feedback forms?- Simple rating?
Implicitly- Google Analytics integration?- Any business metric?
@samuelroze
Thank you!
@samuelroze