EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: NSLS-II Debian Repository in 2018
From: "Konrad, Martin" <[email protected]>
To: Anton Derbenev <[email protected]>, Ralph Lange <[email protected]>
Cc: EPICS Tech Talk <[email protected]>
Date: Thu, 3 May 2018 18:19:41 +0000
Hi Anton, Ralph,
> I get a bit jealous every time I see "bottom-to-top" setups with
> CIs, push triggering, automatic testing and such - that is until I
> imagine something goes wrong and, say, a malformed input just drags a
> trace through the entire setup.
Sure it does. But the same is true if you build and deploy manually. We
are trying to prevent issues by:

- Maintaining a "master" branch which gets build into an "unstable"
Debian repo and a "release" branch which gets build into a "release"
Debian repo. Releasing means merging to the release branch.
- We have set up a test network that mimics our production network. We
deploy from the "unstable" repo into this test environment and from the
"release" one into the production network. Nothing goes out to
production without test and approval.
- We are trying to have one piece of each device on the test network. In
other cases we are simulating hardware. The fact that FRIB is heavily
using VMs and only a small number of physical IOCs helps to keep the
cost for such a test environment low.

> Even if that doesn't break production right away, cleaning things up
> may be troublesome.
If we broke something we can roll back. This can be done either by

a) reverting the bad commit in Git and waiting for the new packages to
be build and distributed or
b) installing an older version of the affected package(s)

Both approaches work well for us.

> What different in the "FRIB version numbers" is that upload comes 
> before distribution - doesn't it mean that a recent upload for, say, 
> jessie will sort as newer when compared to an older upload for 
> stretch? And the system will consider it to be newer if it sees 
> both.
We attach the timestamp when our CI server builds the _source_ package.
If the same source package gets build for multiple distributions the
version number of the resulting packages is the same except for the
distribution name. The package build for stretch ("debian09") will sort
as newer as the one for jessie ("debian08"). This ensures we upgrade to
the stretch package after dist-upgrading a machine.

Regarding the Git hash in the version number: I like this feature as it
allows me to directly correlate packages (including "unstable" builds)
to a revision in Git. I agree that this is less important for production
builds if they get tagged anyway. But to be honest I trust the Git hash
more than a tag that could get modified later. We still maintain normal
version numbers (e.g. "4.33") for readability but we never saw a reason
to remove the additional stuff (timestamp, build number and Git hash) -
it can easily be ignored if not needed.

-Martin

-- 
Martin Konrad
High Performance Controls Team Leader
Facility for Rare Isotope Beams
Michigan State University
640 South Shaw Lane
East Lansing, MI 48824-1321, USA
Tel. 517-908-7253
Email: [email protected]

Replies:
Re: NSLS-II Debian Repository in 2018 Michael Davidsaver
Re: NSLS-II Debian Repository in 2018 Carlos Pascual
References:
Re: NSLS-II Debian Repository in 2018 Anton Derbenev
Re: NSLS-II Debian Repository in 2018 Ralph Lange
Re: NSLS-II Debian Repository in 2018 Anton Derbenev
Re: NSLS-II Debian Repository in 2018 Konrad, Martin
Re: NSLS-II Debian Repository in 2018 Ralph Lange

Navigate by Date:
Prev: Re: Request: Survey of EPICS PVA ( a.k.a EPICS V4) users Mark Rivers
Next: Re: Request: Survey of EPICS PVA ( a.k.a EPICS V4) users Bruno Martins
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: NSLS-II Debian Repository in 2018 Anton Derbenev
Next: Re: NSLS-II Debian Repository in 2018 Michael Davidsaver
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  <20182019  2020  2021  2022  2023  2024 
ANJ, 07 May 2018 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·