Commit Graph

513 Commits

Author SHA1 Message Date
Jean-Paul Calderone
d455e3c88f get more output from the build step 2023-07-04 13:45:01 -04:00
Jean-Paul Calderone
35254adebf try to make noise to avoid ci timeouts 2023-07-04 13:28:24 -04:00
Jean-Paul Calderone
f5dd14e086 use a constant nixpkgs for build environment setup 2023-07-04 13:24:33 -04:00
Jean-Paul Calderone
4646c5ea38 identify the nixpkgs input correctly 2023-07-04 13:22:37 -04:00
Jean-Paul Calderone
84eb1a3e32 still limit cores during build though 2023-07-04 13:13:16 -04:00
Jean-Paul Calderone
3d62b9d050 drop the separate build-dependencies step
Since we don't run the unit tests as part of the package build now we don't
need it
2023-07-04 13:12:28 -04:00
Jean-Paul Calderone
95ee3994a9 get a jmespath interpreter 2023-07-04 13:08:00 -04:00
Jean-Paul Calderone
2ddb0970a3 access to "experimental" nix commands 2023-07-04 12:50:48 -04:00
Jean-Paul Calderone
452ba6af32 try to get ci to use the flake 2023-07-04 12:48:45 -04:00
Jean-Paul Calderone
fa034781b4 Perhaps this is the correct way to locate the tox-managed venv 2023-04-28 14:29:21 -04:00
Jean-Paul Calderone
04ef5a02b2 eh ... these things moved into the tox-managed venv
not intentional but not sure what a _good_ fix is, so try this.
2023-04-28 14:12:01 -04:00
Jean-Paul Calderone
29c0ca5974 put the tox installation near other software installation 2023-04-28 13:51:22 -04:00
Jean-Paul Calderone
a088b1d812 don't bother to make a wheel of tox, just install it 2023-04-28 13:49:14 -04:00
Jean-Paul Calderone
d67016d1b9 Get the right version of tox in the wheelhouse 2023-04-28 13:39:49 -04:00
Jean-Paul Calderone
f0b98aead5 You don't need tox *inside* your test environment.
You need tox to *manage* your test environment (this is the premise, at least).
2023-04-28 13:33:25 -04:00
Jean-Paul Calderone
f6e4e862a9 Require that the actual test run step do this part
Keep this script to wheelhouse population.  We might be giving up a tiny bit
of performance here but let's make it work at all before we make it fast.
2023-04-28 07:50:50 -04:00
Jean-Paul Calderone
58ccecff54 Take a step towards unifying dependency pins used by tox env and Docker image building 2023-04-27 11:17:19 -04:00
Jean-Paul Calderone
3d0c872f4c restrict CI jobs to the wheelhouse 2023-04-27 10:44:10 -04:00
Itamar Turner-Trauring
e9a9ac7110 Rip out codecov for now. 2023-04-13 09:44:52 -04:00
Jean-Paul Calderone
7ae7db678e add CPython 3.8 and CPython 3.9 unit test jobs to CircleCI 2023-04-05 09:03:51 -04:00
Jean-Paul Calderone
2be9e949f0 add Ubuntu 22.04 unit test job to CircleCI 2023-04-05 09:02:34 -04:00
Jean-Paul Calderone
ca7d60097c update stale explanation about CACHIX_NAME 2023-03-26 20:05:35 -04:00
Jean-Paul Calderone
51f763ca9e fix word-o 2023-03-26 20:04:46 -04:00
Jean-Paul Calderone
727d10af93 hit the right build target 2023-03-22 09:40:58 -04:00
Jean-Paul Calderone
8d0869f614 Factor some shared pieces of CircleCI configuration out
* Take DOCKERHUB_CONTEXT off of the single arbitrary job it was hung on and
  make it standalone.  This isolates it from future changes to that particular
  job.

* Take DOCKERHUB_AUTH out of `jobs` so it doesn't need a lot of extra
  boilerplate to pass schema validation.

* Give the "nixos" job a Python version parameter so it can be instantiated
  multiple times to test multiple Python versions.  Change the "NixOS
  unstable" instantiation to use Python 3.11 as a demonstration.

* Move a lot of the implementation of the "nixos" job into a "nix" executor
  and a "nix-build" command that, together, do the generic setup required to do
  any nix-based builds.
2023-03-22 09:30:52 -04:00
Jean-Paul Calderone
10414e80ed Remove some unnecessary hierarchy
I thought `default.nix` was handled specially for the purposes of automatic
parameter population but it isn't.  Instead, you just need this `args@{...}`
pattern.
2023-03-14 10:25:02 -04:00
Jean-Paul Calderone
d648592a87 get the helper ... 2023-03-13 19:43:16 -04:00
Jean-Paul Calderone
6e6fc2d307 The Nix test expression includes a package build, so just do that 2023-03-13 19:02:54 -04:00
Jean-Paul Calderone
93cd2aa354 re-enable nix-based test suite runs 2023-03-13 16:43:22 -04:00
Jean-Paul Calderone
b73045d93c fix ci configuration 2023-03-13 16:21:36 -04:00
Jean-Paul Calderone
02904a363b Drop nixpkgs 21.11 - it is missing some stuff we need
Not only some nixpkgs facilities but it also includes a rustc that's too old
to build pycddl.
2023-03-13 16:19:07 -04:00
Jean-Paul Calderone
568e1b5317 Replace the mach-nix-based package with a nixpkgs-based package
The built-in nixpkgs `buildPythonPackage` doesn't do metadata discovery so we
have to duplicate a lot of the package metadata.  However, mach-nix is
unmaintained and incompatible with newer versions of nixpkgs.
2023-03-13 15:19:43 -04:00
Jean-Paul Calderone
4ea4286a7f Use CIRCLE_PULL_REQUESTS in case there are multiple
which, of course, there never are, except for during testing of this branch
2023-01-28 09:21:34 -05:00
Jean-Paul Calderone
3d58194c3a Complexify the upstream-vs-forked detection 2023-01-28 08:56:48 -05:00
Jean-Paul Calderone
230ce346c5 circleci env var notes 2023-01-28 08:54:00 -05:00
Jean-Paul Calderone
d77d8d09fc Give the integration tests a little longer to finish. 2023-01-20 19:58:06 -05:00
Jean-Paul Calderone
69b25d932c Re-enable the Debian-11 / integration gate 2023-01-18 13:29:14 -05:00
Jean-Paul Calderone
f6555381a9 start right away please so I don't have to wait forever 2023-01-17 10:40:08 -05:00
Jean-Paul Calderone
6bf36bebd0 maybe we need integration here after all 2023-01-17 10:39:58 -05:00
Jean-Paul Calderone
e4745779ab See if this helps tox/pytest on CI 2023-01-17 10:27:20 -05:00
Jean-Paul Calderone
da6b198abc True that the tox default is disabled but it's accounted for already 2023-01-17 10:00:06 -05:00
Jean-Paul Calderone
fe552bf146 Fix CircleCI config typo 2023-01-17 09:44:27 -05:00
Jean-Paul Calderone
5424aa9737 Only run the very slow new integration test in one CI job 2023-01-17 09:27:17 -05:00
Jean-Paul Calderone
da8cc19ef5 Merge remote-tracking branch 'origin/master' into support-triggered-image-builds 2023-01-10 08:54:00 -05:00
Itamar Turner-Trauring
34f5da7246 And add back necessary anchor. 2023-01-09 11:08:31 -05:00
Itamar Turner-Trauring
8c418832bb Remove references to missing jobs. 2023-01-09 11:06:57 -05:00
Itamar Turner-Trauring
1482d41918 Drop 3.7. 2023-01-09 11:01:45 -05:00
Jean-Paul Calderone
25eb3ca262 Switch to a variable observed in practice
There is apparently no CIRCLE_PR_REPONAME set in the runtime environment,
either, despite what the docs say.
2022-12-21 06:47:21 -05:00
Jean-Paul Calderone
21af00bf83 Report the CIRCLE_PR_REPONAME too, because who knows 2022-12-21 06:27:41 -05:00
Jean-Paul Calderone
78e04cc821 Modernize cachix usage; attempt to fix CircleCI conditional
CIRCLE_PR_NUMBER documentation may just be wrong.  It seems like maybe it is
never set?

Try inspecting the source repo value instead.
2022-12-21 06:25:22 -05:00
Jean-Paul Calderone
63fd24d060 Note how you can get this parameter set 2022-12-14 12:48:53 -05:00
Jean-Paul Calderone
f053ef371a Get rid of the scheduled image building workflow. 2022-12-14 12:47:50 -05:00
Jean-Paul Calderone
793033caa8 Fix quoting on the helper 2022-12-14 12:44:11 -05:00
Jean-Paul Calderone
d66d928fb4 Provide a helper for rebuilding the images 2022-12-14 10:07:07 -05:00
Jean-Paul Calderone
1d248f4bd2 comments 2022-12-14 09:56:16 -05:00
Jean-Paul Calderone
761bf9cb9c See if we can get a triggered image build too 2022-12-14 09:49:50 -05:00
Jean-Paul Calderone
815c998c33 regular ci 2022-12-13 09:09:02 -05:00
Jean-Paul Calderone
8282fce4cd build the images again 2022-12-13 08:57:21 -05:00
Jean-Paul Calderone
d5380fe156 regular ci config 2022-12-09 14:27:37 -05:00
Jean-Paul Calderone
e835ed538f Okay don't quote it then 2022-12-09 14:18:40 -05:00
Jean-Paul Calderone
43c044a11b build me the images 2022-12-09 14:13:29 -05:00
Jean-Paul Calderone
666cd24c2b Also constrain tox here 2022-12-09 14:12:50 -05:00
Jean-Paul Calderone
f6a46c86d2 Populate the wheelhouse with a working version of tox 2022-12-09 14:12:20 -05:00
Itamar Turner-Trauring
db59eb12c0 Increase timeout. 2022-11-02 15:22:36 -04:00
Itamar Turner-Trauring
63e16166d7 Restore default image building setup. 2022-05-18 13:43:26 -04:00
Itamar Turner-Trauring
43a34f031d Make it work temporarily. 2022-05-18 13:26:07 -04:00
Itamar Turner-Trauring
90a6cf18ac Just use system Tor, for more stability. 2022-05-18 13:20:44 -04:00
Itamar Turner-Trauring
28e10d127a Do integration tests with more modern image. 2022-05-18 13:20:37 -04:00
Itamar Turner-Trauring
012693f6b2 Build a different image for now. 2022-05-18 13:19:13 -04:00
Itamar Turner-Trauring
5ef8fa5b89 TEmporary only build the image we care about. 2022-05-18 12:57:50 -04:00
Itamar Turner-Trauring
d6abefb041 Temporary always build images. 2022-05-18 12:57:29 -04:00
Itamar Turner-Trauring
36e3beaa48 Get rid of deprecations builder. 2022-04-29 10:03:43 -04:00
Itamar Turner-Trauring
6190399aef Just codechecks. 2022-02-15 14:33:00 -05:00
Itamar Turner-Trauring
bd90728946 Re-add missing environment. 2022-02-15 10:26:54 -05:00
Itamar Turner-Trauring
7ea106a018 Switch back to building Docker images on a schedule. 2022-02-15 10:19:56 -05:00
Itamar Turner-Trauring
95c32ef2ee Fix syntax. 2022-02-15 10:13:35 -05:00
Itamar Turner-Trauring
1fd8603673 Use modern Docker version (with bugfixes for modern distributions). 2022-02-15 10:07:04 -05:00
Itamar Turner-Trauring
3ccd051473 Correct image. 2022-02-14 11:40:03 -05:00
Itamar Turner-Trauring
0bcfc58c22 Various version fixes. 2022-02-14 11:30:24 -05:00
Itamar Turner-Trauring
34fe6a41ed Fix Fedora package name. 2022-02-14 11:05:31 -05:00
Itamar Turner-Trauring
13d23e3baf The terminal is a lie. 2022-02-14 10:57:44 -05:00
Itamar Turner-Trauring
6a17c07158 Drop unnecessary install. 2022-02-14 10:52:33 -05:00
Itamar Turner-Trauring
19a3d2acf7 Fix some more. 2022-02-14 10:49:17 -05:00
Itamar Turner-Trauring
4e133eb759 Fix name. 2022-02-14 10:46:55 -05:00
Itamar Turner-Trauring
5935d99776 Fix name. 2022-02-14 10:45:56 -05:00
Itamar Turner-Trauring
f0a81e1095 Fix typo. 2022-02-14 10:44:44 -05:00
Itamar Turner-Trauring
d4810ce5b8 Get rid of duplicate. 2022-02-14 10:42:58 -05:00
Itamar Turner-Trauring
71989c64eb Fix some references. 2022-02-14 10:40:38 -05:00
Itamar Turner-Trauring
0639f2c16c Try to switch to modern Python 3 world.
Temporarily switch image building to always happen.
2022-02-14 10:35:43 -05:00
Jean-Paul Calderone
d6e82d1d56 explain this unfortunate cache step 2022-01-28 10:41:40 -05:00
Jean-Paul Calderone
6154be1a96 Give the NixOS job instantiations nice names 2022-01-27 15:37:12 -05:00
Jean-Paul Calderone
f5e1af00c0 try using parameters to avoid environment collision
the `cachix push` later on also needs CACHIX_NAME so defining it on a single
step is not great
2022-01-27 15:35:23 -05:00
Jean-Paul Calderone
ccb6e65c04 make sure CACHIX_NAME is set for both nixos jobs 2022-01-27 15:26:19 -05:00
Jean-Paul Calderone
136734c198 try to use cachix 2022-01-27 15:09:52 -05:00
Jean-Paul Calderone
0fb56c9a48 I checked, git is there. 2022-01-27 15:03:21 -05:00
Jean-Paul Calderone
a8033e2c2f cannot get python env that way
we don't need python until later anyway
2022-01-27 14:59:29 -05:00
Jean-Paul Calderone
17d2119521 get setuptools in there 2022-01-27 14:55:34 -05:00
Jean-Paul Calderone
7ee55d07e5 Use nix-env less wrong, maybe 2022-01-27 14:47:43 -05:00
Jean-Paul Calderone
e4ed98fa64 maybe this is where they may be found 2022-01-27 14:39:30 -05:00
Jean-Paul Calderone
e7bba3dad0 cannot use the source before we do the checkout... 2022-01-27 14:36:59 -05:00