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
Jean-Paul Calderone
b99120048f
Get a new version of setuptools as well
...
This whole stack is so fragile, running any non-latest packaging package
is fraught. In particular, without this change, Debian 8 job is
failing.
2018-07-10 11:16:24 -04:00
Jean-Paul Calderone
f7e0ecbe3f
exclude the internal pip wheel cache
...
this was meant to be a download cache only
2018-07-10 10:38:03 -04:00
Jean-Paul Calderone
b981b2eb47
"Invalidate" current caches
...
Necessary because mistakes in caching configuration in previous pushed
revisions populated some caches with invalid state which now persists
and causes some jobs to fail. This wipes the slate clean.
2018-07-10 09:46:17 -04:00
Jean-Paul Calderone
b731ffffa4
Avoid the most general wheelhouse cache key
...
It usually contains stuff we often can't use.
2018-07-10 09:24:09 -04:00
Jean-Paul Calderone
38c8afc6f7
Use the job name instead of the arch
...
arch is only the hardware architecture. this is not sufficient to
differentiate between platforms with ABI incompatibilities. job name
should be good enough (maybe more fine-grained than we really want but
easy to express and maintain).
2018-07-10 08:56:28 -04:00
Jean-Paul Calderone
f15257d9dc
Actually, it's not clear why branch would matter
...
If setup.py and _auto_deps.py are the same, the python dependencies will
be the same, surely.
2018-07-10 08:55:45 -04:00
Jean-Paul Calderone
a667066348
fix typos :(
2018-07-09 15:58:56 -04:00
Jean-Paul Calderone
c07b8e32a4
back to the full test suite
2018-07-09 15:55:32 -04:00
Jean-Paul Calderone
9c1dc47f37
upgrade pip
2018-07-09 15:54:57 -04:00
Jean-Paul Calderone
24dfce49eb
Add caching for RedHat and Slackware
2018-07-09 15:51:10 -04:00
Jean-Paul Calderone
a5c0995b96
absolute path to the relocated source
...
but only for the save cache step because it hasn't been relocated by the
time of restore cache
2018-07-09 15:44:24 -04:00
Jean-Paul Calderone
99edbfaa5e
Cannot build the wheelhouse before getting certifi
2018-07-09 15:27:20 -04:00
Jean-Paul Calderone
ab7652bcf2
it is just arch
2018-07-09 15:05:01 -04:00
Jean-Paul Calderone
12a36abf63
Attempt to have a cached wheelhouse for pip
2018-07-09 13:36:40 -04:00
Jean-Paul Calderone
a6fd0453fe
fix bogus key in some "run" steps
2018-07-09 13:36:40 -04:00
Jean-Paul Calderone
412899174b
partially valid optimization mistakenly snuck in
2018-07-09 13:34:29 -04:00
Jean-Paul Calderone
3623ed49f8
Perhaps this will fix the Slackware TLS errors
2018-07-09 11:02:29 -04:00
Jean-Paul Calderone
e1686cd891
let the test suite complete
2018-07-08 19:06:34 -04:00
Jean-Paul Calderone
97bc77d96b
Go straight to a file with the subunit2 output.
...
It's just too hard otherwise.
2018-07-08 18:49:45 -04:00
Jean-Paul Calderone
869a6ad390
Go straight to subunit v2
2018-07-06 16:55:19 -04:00
Jean-Paul Calderone
4b98440e6a
Try harder to find the right output from Tox
2018-07-06 12:49:19 -04:00
Jean-Paul Calderone
fcf4480cbc
use TOX_JSON where it is appropriate
2018-07-06 12:06:46 -04:00
Jean-Paul Calderone
305d16af69
move path var definition higher up
2018-07-06 12:06:38 -04:00
Jean-Paul Calderone
da007ef21d
make sure nobody owns the artifacts directory
2018-07-06 12:06:21 -04:00
Jean-Paul Calderone
61f88c5359
nothing else will create it, I think
2018-07-06 11:32:19 -04:00
Jean-Paul Calderone
90ef111964
formatting
2018-07-06 11:32:12 -04:00
Jean-Paul Calderone
a23fc6b006
Make more intermediate state visible as artifacts
2018-07-06 11:28:52 -04:00