I uploaded some presentations to SpeakerDeck.com tonight.
Here are various presentations of mine at SpeakerDeck.com and SlideShare.net:
[Previously published at the now defunct MetaBrite Dev Blog.]
If there isn’t a built-in Pipeline step to accomplish something,
you’ll almost certainly use the sh step.
#4 in a series on Jenkins Pipelines
The sh step runs the Bourne shell—/bin/sh, not Bash aka the Bourne-again shell—with the -x (xtrace) and -e (errexit) options.
The xtrace option means that every step in the sh block is echoed to the Jenkins log,
after commands have been expanded by the shell.
This is useful but you could echo the contents of passwords or secret keys inadvertently.
Use set +x in your sh block to control this.
The errexit option means that the script will abort …continue.
[Previously published at the now defunct MetaBrite Dev Blog.]
Much of our code is in one large GitHub repository,
from which several different applications are built.
When changes are pushed to the master branch,
we want only the applications in affected directories to be built.
This was not easy to get right with “Pipeline script from SCM” builds.
#3 in a series on Jenkins Pipelines
Configuration
To get builds to trigger upon a push to GitHub,
you need to configure a webhook pointing to your Jenkins Master.
Create an SSH key for Jenkins/GitHub.
A passphrase is recommended.
Donald Trump is now claiming (WaPo):
Speaking to the U.S. Central Command on Monday,
President Trump went off his prepared remarks to make a truly stunning claim:
The media was intentionally covering up reports of terrorist attacks.
“You’ve seen what happened in Paris, and Nice.
All over Europe, it’s happening,” he said to the assembled military leaders.
“It’s gotten to a point where it’s not even being reported.
And in many cases the very, very dishonest press doesn’t want to report it.
They have their reasons, and you understand that.”
More: The Atlantic, Vice.
This is ridiculous on the face of it.
With literally billions of cellphone cameras in circulation
and hundreds of millions of …continue.
[Previously published at the now defunct MetaBrite Dev Blog.]
The “slave” terminology is unfortunate,
but the utility of running a Jenkins build on a node that you’ve configured
at Amazon’s EC2 is undeniable.
#2 in a series on Jenkins Pipelines
We needed to install system packages on our build nodes,
such as Docker or Postgres.
For obvious reasons,
CloudBees—our Jenkins hosting provider—won’t let you do that on their systems.
You must provide your own build nodes,
where you are free to install whatever you like.
We already use Amazon Web Services,
so we chose to configure our CloudBees account with EC2 slaves.
We had a long and fruitless detour through On-Premise Executors,
which I will not detail here.
Ultimately, …continue.
[Previously published at the now defunct MetaBrite Dev Blog.]
The MetaBrite dev team migrated most of their builds
from Atlassian’s Bamboo Cloud to Jenkins Pipelines in late 2016/early 2017.
This is a series of blog posts about that experience.
Jenkins Pipeline Series
The series so far:
Eviction
For three years, we used Atlassian’s hosted Bamboo Cloud service
to build and deploy most of our code.
In the summer of 2016,
Atlassian announced that they were
going to discontinue Bamboo Cloud on January 31st, 2017.
We looked around for a suitable replacement.
We did not find anything would work well for us.
We had requirements that were—surprisingly—hard …continue.
Title: Gone, Baby, Gone
Author: Dennis Lehane
Rating: ★ ★ ★ ★ ½
Publisher: William Morrow
Copyright: 1998
Pages: 256
Keywords: crime
Reading period: 7 January–3 February, 2017
Four-year-old Amanda McCready has disappeared.
Her aunt, desperate to find her,
engages PIs Patrick Kenzie and Angie Gennaro to find the child.
The mother, Helene, is drunken, slatternly, and neglectful:
in short, unfit and unsympathetic.
Kenzie and Gennaro don’t want the case—the odds of finding Amanda alive and unharmed are low.
They’ll go through hell before they succeed.
This book veers from blackly funny to gutwrenching.
Kenzie and Gennaro come up against the worst of the worst
and against decent people doing wrong for reasons that seem right to …continue.
I’ve been using a knee walker for the last couple of weeks.
For the first time, I took public transportation by myself
to attend Papers We Love tonight.
I rolled myself from 1st Ave S & Washington up to the Pioneer Square station,
took the Light Rail one stop north to the University Street station at 3rd & Seneca,
then rolled down the hill to 2nd & Spring.
It’s a trip I wouldn’t have thought about twice if I were walking normally—and I probably would have walked the entire way
rather than take the Light Rail only one short stop.
It’s a different matter on a knee scooter.
I said …continue.
Title: The Rhesus Chart
Author: Charles Stross
Rating: ★ ★ ★ ★ ½
Publisher: Ace
Copyright: 2014
Pages: 359
Keywords: Lovecraftian spy thriller
Reading period: 27–29 January, 2017
“Don’t be silly,” Bob, said Mo, “everyone knows vampires don’t exist!”
Thus opens The Rhesus Chart.
We quickly come to realize that vampires do exist and
we come to wonder why everyone in the Laundry is so dogmatically sure that they don’t.
One of the nest of baby vampires that sets the plot in motion
is Bob’s toxic ex-girlfriend, Mhari,
who manages to convince the Laundry that they should recruit her clutch
rather than exterminate them.
But there are old vampires who have …continue.
I found something very useful in the dingbats range of Unicode characters:
the negative circled san-serif digits, ➊ ➋ ➌ ➍ ➎ ➏ ➐ ➑ ➒ ➓ .
I’ve started using them to label points of interest in code.
They play well with the code-block directive in reStructuredText.
sudo docker images --format '{{.Repository}}:{{.Tag}}' \ ➊
| grep $IMAGE_NAME \ ➋
| grep …continue.
Previous »
« Next