#release-engineering (2018-08)

jenkins_ci All things CI/CD. Specific emphasis on Codefresh and CodeBuild with CodePipeline.

CI/CD Discussions

Archive: https://archive.sweetops.com/release-engineering/

2018-08-19

Erik Osterman avatar
Erik Osterman


but kinda bothers me that chart version would rev with appVersion (they don’t have to match of course).

Erik Osterman avatar
Erik Osterman

@michal.matyjek this strategy is designed for repos where we cotenant the chart with the app itself. if the chart is not hosted in app repo, then it’s a much more difficult problem to solve.

Erik Osterman avatar
Erik Osterman

I don’t see the benefit of treating an app as a “monorepo” just because it also contains a chart. that is, treating the “chart” as one app, and the service itself as another “app”. If the chart and app are in the same repo, then they are the same version IMO.

Erik Osterman avatar
Erik Osterman

that said, we’re investing now in a monochart.

Erik Osterman avatar
Erik Osterman

this is one chart to rule them all.

Erik Osterman avatar
Erik Osterman

it’s still a WIP with lots of comments. @alebabai is working on it.

Erik Osterman avatar
Erik Osterman

The idea is to get out of the business of writing charts and just defining values.yaml

Erik Osterman avatar
Erik Osterman

…to stop allowing every service to be a snowflake and instead take the Heroku approach where you write a service that conforms to certain principals and then the monochart just works.

Erik Osterman avatar
Erik Osterman

Plus, the monochart is composable, so you can create a service with multiple components just by creating an umbrella chart

alebabai avatar
alebabai
06:03:46 PM

@alebabai has joined the channel

Erik Osterman avatar
Erik Osterman

@michal.matyjek any recommendations for alternatives to “bats”?

michal.matyjek avatar
michal.matyjek

nothing comes to mind, but looks like you are picking bats-core

michal.matyjek avatar
michal.matyjek

?

Erik Osterman avatar
Erik Osterman

haha

Erik Osterman avatar
Erik Osterman

yea - just needed to move forward to something. still in the prototyping phase. it can be replaced with something else.

Erik Osterman avatar
Erik Osterman

seems like it’s no longer maintained

Erik Osterman avatar
Erik Osterman
sstephenson/bats

bats - Bash Automated Testing System

Erik Osterman avatar
Erik Osterman

though looks like bats-core is maintained

Erik Osterman avatar
Erik Osterman
bats-core/bats-core

bats-core - Bash Automated Testing System

Erik Osterman avatar
Erik Osterman

Travis is using bats

Erik Osterman avatar
Erik Osterman

@Sebastian Nemeth heads up, i’ve spent some time this weekend working on a prototype for testing #geodesic

Sebastian Nemeth avatar
Sebastian Nemeth
06:50:31 PM

@Sebastian Nemeth has joined the channel

Erik Osterman avatar
Erik Osterman

Submitted some PRs against geodesic to make it easier

Erik Osterman avatar
Erik Osterman

For now, I’m going to be using Codefresh because it’s easier to iterate than using codebuild/codepipeline

Erik Osterman avatar
Erik Osterman

as it relates to infrastructure, I see it boils down to a few different use-cases

Erik Osterman avatar
Erik Osterman
  1. testing terraform modules (including terraform-root-modules)
Erik Osterman avatar
Erik Osterman
  1. testing helm/helmfiles
Erik Osterman avatar
Erik Osterman
  1. testing account-level infrastructure
Erik Osterman avatar
Erik Osterman

for our purposes, I’ve ruled out atlantis and test kitchen, at least at this phase. I want something that lets us test more holistically, since what we need to test is the integration of lots of systems across languages, tools, and binaries.

Erik Osterman avatar
Erik Osterman

for this reason, I am leaning towards using bats (bats-core) - or a tool like it

Erik Osterman avatar
Erik Osterman

bats-core feels very lightweight, which I like.

Erik Osterman avatar
Erik Osterman

bash as a “top most level” language for integration also feels right. it doesn’t preclude us using other purpose-built testing frameworks for individual languages or apps.

2018-08-18

michal.matyjek avatar
michal.matyjek

On this topic - maybe it’s my misunderstanding of helm? but kinda bothers me that chart version would rev with appVersion (they don’t have to match of course). Or is it OK to keep these decoupled in say, dev, and only revision chart version on promoting to staging/production? Don’t use appVersion in charts at all? What’s the right strategy?

michal.matyjek avatar
michal.matyjek

(this is loosely related to the PR above)

2018-08-17

antonbabenko avatar
antonbabenko
10:36:34 AM

@antonbabenko has joined the channel

2018-08-16

Erik Osterman avatar
Erik Osterman
Promote Helm Charts and Docker Images Across Repositories by goruha · Pull Request #85 · cloudposse/build-harness

What Use helm package to change version and app Version of chart Use convention that default image tag is based on app Version Create promote targets that allow to promote chat to required versio…

Erik Osterman avatar
Erik Osterman

This adds the ability to promote images and charts between repositories

Erik Osterman avatar
Erik Osterman

We suggest adopting this as your production strategy

Erik Osterman avatar
Erik Osterman

There are some minor breaking changes which @Igor Rodionov will document

Erik Osterman avatar
Erik Osterman

(related to renamed ENVs)

Max Moon avatar
Max Moon

2018-08-09

dat.le avatar
dat.le
07:01:48 AM

@dat.le has joined the channel

2018-08-08

Michael Pereira avatar
Michael Pereira
03:31:51 PM

@Michael Pereira has joined the channel

Michael Pereira avatar
Michael Pereira

@michal.matyjek +1 for hadolint as I believe it’s based on the excellent shellcheck, which makes sense since Dockerfile are mostly just a collection of shell commands

Michael Pereira avatar
Michael Pereira

so it benefits from the existing shellcheck rules

:--1:1

2018-08-05

jylee avatar
jylee
04:28:41 PM

@jylee has joined the channel

2018-08-01

Phil avatar
Phil
08:13:26 AM

@Phil has joined the channel

my-janala avatar
my-janala
02:23:57 PM

@my-janala has joined the channel

Ziad Hilal avatar
Ziad Hilal
05:34:48 PM

@Ziad Hilal has joined the channel

    keyboard_arrow_up