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
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
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
4b03b6e4d7
reenable the other things
2019-06-25 19:29:56 -04:00
Jean-Paul Calderone
a3637c193d
try telling the virtualenv to use pypy
2019-06-25 18:51:11 -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
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
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
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
0cf600a27d
Still a good idea to push the images
2019-04-04 15:41:22 -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
16b13f6f0e
Have a go at converting the Fedora jobs
2019-04-04 14:02:00 -04:00
Jean-Paul Calderone
302292366a
Have a go at converting CentOS
2019-04-04 14:00:19 -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
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
4d15504e4a
Try avoiding some of the sudo'ing
2019-04-04 12:54:24 -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
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
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
e3d572b6b4
Get Debian 8 switched over as well
2019-04-03 14:41:50 -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
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
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
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
bbb09178b3
Add a job for building pre-initialized Docker images for CI
2019-04-03 13:15:08 -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
63f1f3139f
pretty labels
2018-07-10 14:03:57 -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
606cea7db5
see what the deal is with the pip cache
2018-07-10 12:47:48 -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
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
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
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
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
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
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
Jean-Paul Calderone
d074d52b48
Get junitxml uploaded as an artifact as well
2018-07-06 10:59:10 -04:00
Jean-Paul Calderone
16e4370630
Generate junitxml and give it to CircleCI
2018-07-05 14:19:23 -04:00
Jean-Paul Calderone
98cc14c622
misc cleanups
2018-07-05 14:00:36 -04:00
Jean-Paul Calderone
52ac1462c9
whitespace
2018-07-05 09:56:47 -04:00
Jean-Paul Calderone
dd9acf25c8
Only run the older if the newer succeeds
...
Spreads the initial builds across different platforms more effectively
and avoids potential redundant failing builds on different versions of a
single platform.
2018-07-05 09:07:10 -04:00
Jean-Paul Calderone
b9278cd25a
Remove the magic-folder "machine" configuration
...
Ubuntu 14.04 is so ooooold. It doesn't like the way we're installing
Python packages now.
2018-07-05 08:54:02 -04:00
Jean-Paul Calderone
eb55b6ad32
Add a couple more dependencies of sqlite3
2018-07-04 20:46:46 -04:00
Jean-Paul Calderone
6a0fda7ae5
the real package name
2018-07-04 16:02:01 -04:00
Jean-Paul Calderone
b2a3a38bdd
linux/limits.h
2018-07-04 16:01:54 -04:00
Jean-Paul Calderone
f7e62b7e26
make sure we can build gmpy for twisted
2018-07-04 11:44:20 -04:00
Jean-Paul Calderone
f474789e40
make sure we have boring build tools like as
2018-07-04 11:43:49 -04:00
Jean-Paul Calderone
78a31960fa
make sure we have boring headers like limits.h
2018-07-04 11:42:06 -04:00
Jean-Paul Calderone
9525198cdd
Apparently the upgrade command works differently.
...
It doesn't find anything if we spell out the full package name and
version. If we drop the last segment, however...
2018-07-04 09:07:46 -04:00
Jean-Paul Calderone
11fa6303e9
try upgrading the installed package instead
2018-07-03 16:10:07 -04:00
Jean-Paul Calderone
e42d330baa
perhaps this is the maintained package?
2018-07-03 16:05:08 -04:00
Jean-Paul Calderone
0f7b075db0
add cyrus-sasl, secret curl dependency
2018-07-03 15:40:48 -04:00
Jean-Paul Calderone
a8b02d2240
Attempt better slackpkg usage
...
Package matching seems to be by substring. Avoid getting a ton of
useless packages by making more precise substrings.
Also, there is no distro virtualenv package. Get it another way.
2018-07-03 15:36:26 -04:00
Jean-Paul Calderone
bf4aee0858
Also install an ssh client
2018-07-03 15:23:48 -04:00
Jean-Paul Calderone
b8e369e85f
Avoid the Y/n prompt
2018-07-03 15:21:50 -04:00
Jean-Paul Calderone
301e8d321f
Configure a Slackware job
2018-07-03 14:52:10 -04:00
Jean-Paul Calderone
2deb0a4b26
Add a "C" locale testing configuration
2018-06-19 08:37:18 -04:00
Jean-Paul Calderone
35996ef90f
Re-enable the rest of the jobs
2018-06-16 16:06:14 -04:00
Jean-Paul Calderone
329cf46403
Help codecov find the coverage data
2018-06-16 10:19:45 -04:00
Jean-Paul Calderone
1102a2f4fc
hilarious how hard it is to just pass an argument
2018-06-15 16:07:24 -04:00
Jean-Paul Calderone
a4fb33c235
debug output
2018-06-15 16:00:27 -04:00
Jean-Paul Calderone
d84773702d
And these
2018-06-15 15:54:47 -04:00
Jean-Paul Calderone
054bb0ee6f
pass arg in both places
2018-06-15 15:52:59 -04:00
Jean-Paul Calderone
9abb323d31
try passing positional args instead
2018-06-15 15:40:50 -04:00
Jean-Paul Calderone
7d74e042a3
Thanks, sudo.
2018-06-15 15:37:08 -04:00
Jean-Paul Calderone
13214437bf
Get the right virtualenv package
2018-06-15 15:34:21 -04:00
Jean-Paul Calderone
0aab633db9
do the right thing
2018-06-15 15:33:13 -04:00
Jean-Paul Calderone
00fa08b7cf
bootstrap moves the source
2018-06-15 15:26:19 -04:00
Jean-Paul Calderone
9ad7257614
find the project
2018-06-15 15:14:55 -04:00
Jean-Paul Calderone
02c5a72924
the env var has an unexpanded ~ in it
...
more trouble than it is worth
2018-06-15 15:00:47 -04:00
Jean-Paul Calderone
0abb7cf350
need sudo here
2018-06-15 14:55:57 -04:00
Jean-Paul Calderone
82b07f3714
not installed yet
2018-06-15 14:55:16 -04:00
Jean-Paul Calderone
dd1d934b25
What is going on with not being able to run these?
2018-06-15 14:53:19 -04:00
Jean-Paul Calderone
7dda09bb20
Cannot use an in-repo script to install git...
2018-06-15 14:51:11 -04:00
Jean-Paul Calderone
00e3a04c7e
Factor steps out for use by machine executer
2018-06-15 14:21:33 -04:00
Jean-Paul Calderone
414c0907a7
Give test_system an ip
executable
...
Same as the net-tools fix for CentOS 7, basically.
2018-06-15 14:01:42 -04:00
Jean-Paul Calderone
f39a85dbd8
Add a VM-based magic-folder test job
2018-06-15 13:46:58 -04:00
Jean-Paul Calderone
a4ac9ba9ce
Upload the deprecation warning logs as artifacts
2018-06-15 13:20:46 -04:00
Jean-Paul Calderone
be8dca9f58
remove debug env
2018-06-15 13:20:18 -04:00
Jean-Paul Calderone
b109850683
A better comment about the deprecations job.
2018-06-15 11:36:15 -04:00
Jean-Paul Calderone
69a7573745
Use yaml merge mapping correctly
...
At least, correctly as far as Ruby is concerned...
2018-06-15 11:07:56 -04:00
Jean-Paul Calderone
03bb4ef1a9
Add a deprecations job
2018-06-15 10:58:51 -04:00
Jean-Paul Calderone
663f98101c
Put more of the Tox setup in the setup step
...
This will give more accurate test step timings.
2018-06-15 10:58:51 -04:00
Jean-Paul Calderone
83cb49e83d
Clean up the CircleCI presentation a bit
2018-06-15 10:58:51 -04:00
Jean-Paul Calderone
66903ba3d7
Make the environment a mapping
...
The documentation explains it as a list of single mappings. That makes
no sense but "no sense" is par for the course. However, "circleci
config validate" is happy if it is merely a mapping.
Making it a mapping lets us do a yaml mapping merge later and reduce
duplication.
2018-06-15 10:58:51 -04:00
Jean-Paul Calderone
7cd387bf5b
Specify tox environment with an env var
...
This will make it easier to override.
2018-06-15 10:58:51 -04:00
Jean-Paul Calderone
e9cddda898
Always run coverage
...
If you do not always run coverage, how will you know what the coverage is?
Also remove some duplication in the environment setup.
2018-06-15 10:58:51 -04:00
Jean-Paul Calderone
9d9a725794
Avoid yaml merge map in one place where possible
2018-06-15 10:58:51 -04:00
Jean-Paul Calderone
e5e5bde7b6
Make the test log available as an artifact
2018-06-15 10:58:51 -04:00
Jean-Paul Calderone
ea046cd30f
Add a locale env var
2018-06-15 10:58:51 -04:00
Jean-Paul Calderone
f51e6da9d2
Factor out the duplicate environment config
2018-06-15 10:58:51 -04:00
Jean-Paul Calderone
afa321ae5f
Factor out more of the test suite run config
2018-06-15 10:58:51 -04:00
Jean-Paul Calderone
30380a0d18
Add an Ubuntu 16.04 job
2018-06-15 10:58:51 -04:00
Jean-Paul Calderone
72fb92a045
whitespace
2018-06-15 10:58:51 -04:00
Jean-Paul Calderone
70c9973b8e
Add an Ubuntu 18.04 job
2018-06-15 10:58:50 -04:00
Jean-Paul Calderone
9cd41b900f
Add a Fedora 28 job
2018-06-15 08:44:52 -04:00
Jean-Paul Calderone
dc1f6d3fec
Add a Fedora 27 job
2018-06-15 08:44:52 -04:00
Jean-Paul Calderone
d728c245f3
Factor out the duplicate test step command
2018-06-15 08:44:52 -04:00
Jean-Paul Calderone
8e782aa33f
Add a CentOS 7 test-running job
2018-06-15 08:44:52 -04:00
Jean-Paul Calderone
4bd55b56d1
Set our Hypothesis profile
2018-06-15 08:44:52 -04:00
Jean-Paul Calderone
0b6cb1cceb
Run the test suite unprivileged
2018-06-15 08:44:52 -04:00
Jean-Paul Calderone
7c1ac62c78
Factor duplication out of Debian configuration
2018-06-15 08:44:52 -04:00
Jean-Paul Calderone
d8d83478c8
Install Git first.
...
Hopefully this allows CircleCI to use the real Git client to check out
the source.
2018-06-15 08:44:52 -04:00
Jean-Paul Calderone
13bcb26129
Add current Debian stable
2018-06-15 08:44:52 -04:00
Jean-Paul Calderone
c16026bd88
Try running the test suite
2018-06-15 08:44:52 -04:00
Jean-Paul Calderone
659d661711
Get tox
2018-06-15 08:44:26 -04:00
Jean-Paul Calderone
ed3c7cba0c
Take a stab at an initial CircleCI configuration
2018-06-15 08:44:26 -04:00