Commit Graph

359 Commits

Author SHA1 Message Date
Jean-Paul Calderone
1fcf5051bd Guessed wrong - tahoe-depgraph is Python 2. 2019-09-13 11:25:30 -04:00
Jean-Paul Calderone
47e28d2e5d Grant the job push access to the repository with a GitHub deploy key. 2019-09-13 11:21:20 -04:00
Jean-Paul Calderone
42a01f0046 Add a CI job which runs depgraph.
It can also push the results to GitHub pages.
2019-09-13 11:05:05 -04:00
Jean-Paul Calderone
183385a94b Disable most of CI to speed up development on this branch 2019-09-13 11:04:28 -04:00
Jean-Paul Calderone
6508038a74 tor and i2p were already implied by test 2019-08-14 09:04:39 -04:00
Jean-Paul Calderone
fbe12ba748 Take a shot at really timing out the PyPy job. 2019-08-13 15:57:29 -04:00
Jean-Paul Calderone
10b9575350 It worked. Put it all back. 2019-06-26 13:32:35 -04:00
Jean-Paul Calderone
e40f46c4cf do a quick test with a new image 2019-06-26 13:00:14 -04:00
Jean-Paul Calderone
951f06f562 pyutil 3.3.0 released! 2019-06-26 13:00:09 -04:00
Jean-Paul Calderone
64e4cf5045 Only install custom pyutil for PyPy CI
And add a comment explaining it
2019-06-26 09:10:41 -04:00
Jean-Paul Calderone
c80a28c543 this was vaguely helpful sort of not really
it's definitely extremely noisy though
2019-06-26 08:50:13 -04:00
Jean-Paul Calderone
ba1bff529e re-enable everything 2019-06-26 08:50:04 -04:00
Jean-Paul Calderone
5a5b75b447 back to this 2019-06-26 07:59:53 -04:00
Jean-Paul Calderone
35b21916be use a different branch without versioneer
see if that gets us a decent version number
2019-06-25 19:53:51 -04:00
Jean-Paul Calderone
4b03b6e4d7 reenable the other things 2019-06-25 19:29:56 -04:00
Jean-Paul Calderone
0e76f31d23 apparently this is the spelling 2019-06-25 19:29:56 -04:00
Jean-Paul Calderone
56905270ab try the branch of pyutil 2019-06-25 19:20:59 -04:00
Jean-Paul Calderone
9ddadce376 Tell the rest of the platforms to keep using whatever "python2.7" is. 2019-06-25 19:07:00 -04:00
Jean-Paul Calderone
7b14b11063 just pypy 2019-06-25 18:53:34 -04:00
Jean-Paul Calderone
a3637c193d try telling the virtualenv to use pypy 2019-06-25 18:51:11 -04:00
Jean-Paul Calderone
6d7a9d8400 "debugging" 2019-06-25 18:39:42 -04:00
Jean-Paul Calderone
c94578d3ad "debugging" 2019-06-25 18:31:15 -04:00
Jean-Paul Calderone
a6b4bf55ba try to make subunit2 processing allowed-to-fail too 2019-06-25 15:20:55 -04:00
Jean-Paul Calderone
67d76a0cc5 it's shell, dude 2019-06-25 15:11:20 -04:00
Jean-Paul Calderone
7ace8ae40d can't require a job that isn't 2019-06-25 15:06:34 -04:00
Jean-Paul Calderone
d5c21adb43 correct shell syntax 2019-06-25 15:02:34 -04:00
Jean-Paul Calderone
a351256050 test even faster 2019-06-25 15:02:30 -04:00
Jean-Paul Calderone
32a9f9be0f Attempt to build an allowed failure mechanism
And use it to let the PyPy job fail.
2019-06-25 14:50:42 -04:00
Jean-Paul Calderone
1b29bc4105 speed up testing 2019-06-25 14:21:08 -04:00
Jean-Paul Calderone
da4a3fecb8 Attempt to make CircleCI run PyPy job with the right tox environment 2019-06-25 14:16:26 -04:00
Jean-Paul Calderone
0a761356d4 Put the job in the workflow 2019-06-25 13:34:33 -04:00
Jean-Paul Calderone
ec306663c9 Get a PyPy image 2019-06-25 13:20:04 -04:00
Jean-Paul Calderone
6f855cb328 Add a PyPy test job 2019-06-25 13:12:57 -04:00
Jean-Paul Calderone
3e0681e846 Build a Docker image we can use for PyPy CI 2019-06-25 13:12:42 -04:00
Jean-Paul Calderone
bdc169985f Stop setting PIP_NO_INDEX. 2019-04-07 17:01:17 -04:00
Jean-Paul Calderone
d5a9bc8c47 Restore the nobody user configuration 2019-04-07 11:53:03 -04:00
Jean-Paul Calderone
53ecb8bcc5 correct stupid editing mistake 2019-04-07 11:37:11 -04:00
Jean-Paul Calderone
fbea42c8db Revert the multi-stage changes.
It doesn't save much space.
It greatly complicates the Dockerfile.
It breaks the `upcoming-deprecations` job unless even more pains are taken.
2019-04-07 11:10:15 -04:00
Jean-Paul Calderone
de9d7082ea sigh 2019-04-06 15:18:38 -04:00
Jean-Paul Calderone
6360b4400a Fix tab indents 2019-04-06 11:13:59 -04:00
Jean-Paul Calderone
6be630c84e Let us have version infp 2019-04-06 11:12:27 -04:00
Jean-Paul Calderone
2f8e22f81e Fix the permissions ... twice. Thanks, COPY. 2019-04-06 10:00:19 -04:00
Jean-Paul Calderone
a36e70e133 Maybe this will clean up a little more 2019-04-06 10:00:02 -04:00
Jean-Paul Calderone
4a33d5b10e Get other dependencies we need, too. 2019-04-06 09:59:52 -04:00
Jean-Paul Calderone
8ea7b2c81c Try a multi-stage build to make a smaller image. 2019-04-06 09:41:57 -04:00
Jean-Paul Calderone
84da275427 Get a couple more basic deps in the wheelhouse 2019-04-06 09:41:47 -04:00
Jean-Paul Calderone
151e10fef0 Avoid the index 2019-04-06 09:41:31 -04:00
Jean-Paul Calderone
292668bf49 Make sure the wheelhouse is usable by nobody 2019-04-06 09:14:59 -04:00
Jean-Paul Calderone
4e56c249d2 tweak the comment x5 2019-04-05 08:15:24 -04:00
Jean-Paul Calderone
a7fb7c21e3 Probably isn't 2019-04-05 08:06:41 -04:00
Jean-Paul Calderone
70e7ce6c3c filters are, apparently, required 2019-04-04 17:05:41 -04:00
Jean-Paul Calderone
ae4c8c6be1 This is no longer used. 2019-04-04 17:03:28 -04:00
Jean-Paul Calderone
bb491df969 Slackware is not a first-class image or whatever 2019-04-04 16:55:22 -04:00
Jean-Paul Calderone
83d91587c8 Build the images on a schedule 2019-04-04 16:54:22 -04:00
Jean-Paul Calderone
5a833ad152 Turns out that was redundant 2019-04-04 16:51:51 -04:00
Jean-Paul Calderone
c840938d27 Convert Slackware to the new pattern 2019-04-04 16:50:59 -04:00
Jean-Paul Calderone
b43d121b46 Fix naming snafu 2019-04-04 15:59:58 -04:00
Jean-Paul Calderone
9fc6d807d8 Let us figure out which release we're on 2019-04-04 15:59:07 -04:00
Jean-Paul Calderone
0cf600a27d Still a good idea to push the images 2019-04-04 15:41:22 -04:00
Jean-Paul Calderone
3fdc0e1ca2 Bind the variables in both branches 2019-04-04 15:36:08 -04:00
Jean-Paul Calderone
0d31003a63 Split the image build job into many 2019-04-04 15:34:34 -04:00
Jean-Paul Calderone
3f323c2c66 Drop the separate Tor-enabled Debian image.
Just install Tor on the other Debian image and re-use that.
2019-04-04 15:33:16 -04:00
Jean-Paul Calderone
e0eca8fc6c Parameterize the Fedora version 2019-04-04 14:29:05 -04:00
Jean-Paul Calderone
cc33115218 Parameterize the Debian version 2019-04-04 14:28:04 -04:00
Jean-Paul Calderone
7cfbc115a4 Parameterize the Ubuntu version 2019-04-04 14:26:47 -04:00
Jean-Paul Calderone
60f47759e2 Parameterize the CentOS version 2019-04-04 14:25:08 -04:00
Jean-Paul Calderone
a8f6ff6d36 Support a platform where the nobody group has a different name 2019-04-04 14:19:31 -04:00
Jean-Paul Calderone
16b13f6f0e Have a go at converting the Fedora jobs 2019-04-04 14:02:00 -04:00
Jean-Paul Calderone
0df1432592 Blargh should have checked this in with the other Tor changes 2019-04-04 14:00:27 -04:00
Jean-Paul Calderone
302292366a Have a go at converting CentOS 2019-04-04 14:00:19 -04:00
Jean-Paul Calderone
273e4ca226 A few comments scraped from config.yml's CentOS job 2019-04-04 13:59:28 -04:00
Jean-Paul Calderone
cb2c50fbf7 Install Tor in the Docker image and use it for integration job 2019-04-04 13:48:24 -04:00
Jean-Paul Calderone
ecaeedad84 This is baked into the Debian image we inherit 2019-04-04 13:34:41 -04:00
Jean-Paul Calderone
11dd42a3fa Remove one more sudo
Unnecessary and broken since we run this step as nobody now
2019-04-04 13:23:26 -04:00
Jean-Paul Calderone
679893d541 Also propagate the user config to the other jobs
It was not propagated because they each have their own distinct "docker"
section.
2019-04-04 13:16:28 -04:00
Jean-Paul Calderone
08693e79f8 Apply the various changes to the 3 other Debian-alikes 2019-04-04 13:12:29 -04:00
Jean-Paul Calderone
4d15504e4a Try avoiding some of the sudo'ing 2019-04-04 12:54:24 -04:00
Jean-Paul Calderone
2896370880 Factor some complexity out of the Dockerfile for easier reuse 2019-04-04 12:50:05 -04:00
Jean-Paul Calderone
99f0dad02b See if we can start with some source
And just let CircleCI update it
2019-04-04 12:38:48 -04:00
Jean-Paul Calderone
53b9e92901 Just inherit it 2019-04-04 12:38:27 -04:00
Jean-Paul Calderone
ebe5fba518 Follow the move 2019-04-04 12:24:16 -04:00
Jean-Paul Calderone
d19a9732e3 Try to get tox to use the wheelhouse too 2019-04-04 12:15:35 -04:00
Jean-Paul Calderone
b6233e0bef I assume checkout is re-screwing the permissions 2019-04-04 12:09:35 -04:00
Jean-Paul Calderone
904a175be4 Parameterize venv and source paths more 2019-04-04 12:07:32 -04:00
Jean-Paul Calderone
f5765acdb8 Just inherit the working directory 2019-04-04 12:07:08 -04:00
Jean-Paul Calderone
8bba0bfeaf "Directory (/tmp) you are trying to checkout to is not empty and not git repository" 2019-04-04 11:45:16 -04:00
Jean-Paul Calderone
ab5410f001 Try to get the project source into a better, predictable location 2019-04-04 11:44:27 -04:00
Jean-Paul Calderone
30a34d0b5d Move virtualenv and wheelhouse creation into the image 2019-04-04 11:26:10 -04:00
Jean-Paul Calderone
df1a51cb60 Have the project source available to the Docker build context 2019-04-04 10:49:39 -04:00
Jean-Paul Calderone
f39f6bf2f6 not sure why it doesn't work the other way 2019-04-04 10:45:17 -04:00
Jean-Paul Calderone
f794160dcf Split setup-virtualenv.sh into a few pieces
Some of the pieces may be usable in Docker image creation
2019-04-04 10:27:51 -04:00
Jean-Paul Calderone
c1e617abc9 Get rid of the CircleCI caches 2019-04-04 10:07:06 -04:00
Jean-Paul Calderone
19c7a2af85 and the other one 2019-04-03 15:58:41 -04:00
Jean-Paul Calderone
b484b8b1e0 Add the Dockerfile... 2019-04-03 15:58:14 -04:00
Jean-Paul Calderone
ca750dfd0e Build Ubuntu images and switch builders 2019-04-03 15:52:08 -04:00
Jean-Paul Calderone
fa09e7fa3d Stop pretending the username is a variable 2019-04-03 15:46:58 -04:00
Jean-Paul Calderone
57e261fbf8 we have no BASH_ENV I suppose 2019-04-03 15:37:21 -04:00
Jean-Paul Calderone
e911b0d958 Perhaps from this file... 2019-04-03 15:29:34 -04:00
Jean-Paul Calderone
02d91b5ea6 Factor openssl decryption and docker login into separate steps 2019-04-03 15:24:58 -04:00
Jean-Paul Calderone
b658b30b19 no longer supplied 2019-04-03 15:05:23 -04:00
Jean-Paul Calderone
e3d572b6b4 Get Debian 8 switched over as well 2019-04-03 14:41:50 -04:00
Jean-Paul Calderone
bf2c43a500 fix the Dockerfile syntax 2019-04-03 14:41:36 -04:00
Jean-Paul Calderone
3a01938159 Do some more package installation in the ci image 2019-04-03 14:34:13 -04:00
Jean-Paul Calderone
03d19dc93f Use the image we can build 2019-04-03 14:27:45 -04:00
Jean-Paul Calderone
67586c68db Get the image tagged with the right name for the push 2019-04-03 14:19:10 -04:00
Jean-Paul Calderone
3a20912ecf Re-generate with a new key because I leaked the old one 2019-04-03 14:18:19 -04:00
Jean-Paul Calderone
ff49e4e38f note a manual prereq 2019-04-03 14:18:13 -04:00
Jean-Paul Calderone
c55e2d141e be explicit about digest algorithm
it changes from version to version
2019-04-03 14:11:10 -04:00
Jean-Paul Calderone
c8d355326a okay I give, what the hell? 2019-04-03 14:05:12 -04:00
Jean-Paul Calderone
e7b7a6a836 Try using -pass instead of -k 2019-04-03 14:00:26 -04:00
Jean-Paul Calderone
8915f86233 Try re-encrypting with a new key
Previous build failed with:

bad decrypt
140431532411788:error:06065064:digital envelope routines:EVP_DecryptFinal_ex:bad decrypt:evp_enc.c:531:
Exited with code 1
2019-04-03 13:47:10 -04:00
Jean-Paul Calderone
1d8cf210e9 haha that's not debian. 2019-04-03 13:44:00 -04:00
Jean-Paul Calderone
59231d19ed Gotta have the decryption tool 2019-04-03 13:41:33 -04:00
Jean-Paul Calderone
e4607d2b21 Actually checking it in might help 2019-04-03 13:37:59 -04:00
Jean-Paul Calderone
81fbc1dfb5 maybe this will get the path right?
probably not
2019-04-03 13:37:38 -04:00
Jean-Paul Calderone
3cf9e05efd nope, that was wrong, but this seems to be right. 2019-04-03 13:28:42 -04:00
Jean-Paul Calderone
88f43ad413 perhaps use Docker correctly 2019-04-03 13:26:48 -04:00
Jean-Paul Calderone
f53e166803 Nope. Set via secret-env-cipher. 2019-04-03 13:22:16 -04:00
Jean-Paul Calderone
7f354abd63 Add the secret environment needed to push images to Dockerhub 2019-04-03 13:15:47 -04:00
Jean-Paul Calderone
bbb09178b3 Add a job for building pre-initialized Docker images for CI 2019-04-03 13:15:08 -04:00
Jean-Paul Calderone
4def49ed54 ask subunitreporter for progress reporting 2019-03-25 13:20:04 -04:00
Jean-Paul Calderone
7768d06b51 Set up a Latin 1 locale job 2019-03-20 15:56:01 -04:00
Jean-Paul Calderone
7783433369 Back off on the specificity for git installation
Version number got bumped, nothing was being installed.
2019-01-25 17:03:04 -05:00
Jean-Paul Calderone
1fb2809276 Additionally, disable the CircleCI artifact handling steps 2019-01-24 16:04:58 -05:00
Jean-Paul Calderone
6ee727d67e Avoid the artifact steps for integration tests
Integration tests produce none and trying to do these things breaks.
2019-01-24 16:04:26 -05:00
Jean-Paul Calderone
ec99e7138d Block integration tests on debian-9 results 2019-01-24 10:20:47 -05:00
Jean-Paul Calderone
25719ca1cb Invoke install-tor.sh with the correct path. 2019-01-24 10:04:07 -05:00
Jean-Paul Calderone
f534d3c34f Attempt to configure CircleCI for integration tests 2019-01-24 09:02:27 -05:00
Jean-Paul Calderone
9c359681f2 Flip Debian 8 and 9 definitions
More things want Debian 9.  This reduces duplication.
2019-01-23 18:15:25 -05:00
Jean-Paul Calderone
bd8e4b21b6 Of course, assume yes.
I don't even care what the question is.  Whatever the question is, please just
assume yes.
2019-01-23 11:32:03 -05:00
Jean-Paul Calderone
c053cec465 Switch back to yum
Turns out yum can install by path, too.  And dnf is not readily available on
CentOS (which shares this configuration).
2019-01-23 11:22:53 -05:00
Jean-Paul Calderone
0640cfbb8b Bump Fedora to 28/29 and fix virtualenv install
Fedora python-virtualenv package no longer provides the /usr/bin/virtualenv
executable!  Switch to using dnf to install it so we don't have to guess the
right package name.
2019-01-23 11:14:58 -05:00
Jean-Paul Calderone
841326ed4b Try less aggressive version pinning
Old versions are removed from the package repository, as far as I can
tell.  This happened to curl and broke the build.
2018-07-24 13:14:31 -04:00
Jean-Paul Calderone
93881f34a7 consistent indentation 2018-07-10 15:43:30 -04:00
Jean-Paul Calderone
a1196fccdb Prevent retrieval of source packages for test step 2018-07-10 15:23:16 -04:00
Jean-Paul Calderone
b57fe7635f sudo blocks PIP_FIND_LINKS, explicitly propagate
:(
2018-07-10 15:22:37 -04:00
Jean-Paul Calderone
4fcbfd7158 Get wheels for these external dependencies as well
Particularly because they have their own dependencies and we install
this set of things before we install Tahoe-LAFS.
2018-07-10 15:18:09 -04:00
Jean-Paul Calderone
150ce7d91f Look at the wheelhouse!
Otherwise all non-wheels are rebuilt every time anyway!
2018-07-10 15:05:51 -04:00
Jean-Paul Calderone
a3f9361c86 already running as root 2018-07-10 14:10:46 -04:00
Jean-Paul Calderone
63f1f3139f pretty labels 2018-07-10 14:03:57 -04:00
Jean-Paul Calderone
b9008f13a2 Handle the case where there's not yet a cache 2018-07-10 13:32:10 -04:00
Jean-Paul Calderone
f3df99f470 desired information has been extracted 2018-07-10 13:28:55 -04:00
Jean-Paul Calderone
e8af01db1a Bust the cache again. 2018-07-10 13:24:55 -04:00
Jean-Paul Calderone
e3aa349a71 The group is named differently on different OS.
Maybe this is good enough?
2018-07-10 13:24:17 -04:00
Jean-Paul Calderone
6e5d11dbd0 Attempt to fix the pip cache 2018-07-10 12:59:33 -04:00
Jean-Paul Calderone
606cea7db5 see what the deal is with the pip cache 2018-07-10 12:47:48 -04:00
Jean-Paul Calderone
3c9b85809d explicitly bring in the wheel package too
to support `bdist_wheel`
2018-07-10 12:08:40 -04:00
Jean-Paul Calderone
524a6ef217 Use the moved project paths now
because the bootstrap step is what does the moving
2018-07-10 11:59:04 -04:00
Jean-Paul Calderone
21edff4a09 get some more debug info 2018-07-10 11:46:02 -04:00
Jean-Paul Calderone
0d209c0af4 Manage the cache around *only* virtualenv setup
We don't need anything from the cache in the bootstrap step and
Slackware cannot interact with the cache until after the bootstrap step
anyway.
2018-07-10 11:42:53 -04:00