Commit Graph

539 Commits

Author SHA1 Message Date
Jean-Paul Calderone
e92e7faeea how much difference does this make 2023-08-08 11:30:02 -04:00
Jean-Paul Calderone
3c8a11d468 pick a Python to support on Windows 2023-08-08 11:30:02 -04:00
Jean-Paul Calderone
e2fe1af3d9 Configure Hypothesis for the Windows job 2023-08-08 11:30:02 -04:00
Jean-Paul Calderone
862bda9e63 attempt to do something useful 2023-08-08 11:30:02 -04:00
Jean-Paul Calderone
e6e38128bc yaml syntax 2023-08-08 11:30:02 -04:00
Jean-Paul Calderone
d369dc0f2c try to install tox 2023-08-08 11:30:02 -04:00
Jean-Paul Calderone
6400a39661 so ... can we use an executor? 2023-08-08 11:30:02 -04:00
Jean-Paul Calderone
422d4ee9cc previous rev started an environment, try to get a little closer to the one we want
a more precise tag that won't shift around underneath us
2023-08-08 11:30:02 -04:00
Jean-Paul Calderone
77c677ffc0 just like the example 2023-08-08 11:30:02 -04:00
Jean-Paul Calderone
bd9d2e08ef eh? 2023-08-08 11:30:02 -04:00
Jean-Paul Calderone
4abbadda47 Try a different tag
https://circleci.com/developer/machine/image/windows-server-2022-gui says
"2023.06.1" is a valid tag but real execution says "Job was rejected because
resource class medium, image windows-server-2022-gui:2023.06.1 is not a valid
resource class".  Is it even complaining about the image tag?  Or is it
complaining about the resource class?  I don't know.  I didn't touch the
resource class though.
2023-08-08 11:30:02 -04:00
Jean-Paul Calderone
f826914c58 syntax 2023-08-08 11:30:02 -04:00
Jean-Paul Calderone
a8d582237c dump the useless orb 2023-08-08 11:30:02 -04:00
Jean-Paul Calderone
d050faac92 make the config match the schema 2023-08-08 11:30:02 -04:00
Jean-Paul Calderone
f8db781812 Add a simple test job to see if the other pieces work 2023-08-08 11:30:01 -04:00
Jean-Paul Calderone
814ba4c88b Add Windows executor holding the Windows test environment config 2023-08-08 11:29:26 -04:00
Jean-Paul Calderone
08b594b8be Declare the Windows orb for easier Windows environment setup 2023-08-08 11:29:26 -04:00
Jean-Paul Calderone
08e364bbab numpy is not supported on python38 anymore 2023-07-20 09:06:05 -04:00
Jean-Paul Calderone
ddfd95faff comment tweak 2023-07-19 14:33:49 -04:00
Jean-Paul Calderone
5553019c4e switch to new nix profile-based installation 2023-07-08 08:14:27 -04:00
Jean-Paul Calderone
454ab223d1 nope, we can't just do that
we lose permission to install stuff
2023-07-08 08:10:52 -04:00
Jean-Paul Calderone
6710d625a2 can we just run as an unprivileged user? 2023-07-08 08:08:54 -04:00
Jean-Paul Calderone
e3e223c8d6 bump to a newer nixos image 2023-07-08 08:08:47 -04:00
Jean-Paul Calderone
f7dd63407f move all of the Python jobs to the nixpkgs unstable branch
This is the only place we can get a compatible pyOpenSSL/cryptography at the moment
2023-07-07 12:17:39 -04:00
Jean-Paul Calderone
3871a92890 fix another outdated comment 2023-07-04 14:36:27 -04:00
Jean-Paul Calderone
bf1db85219 slightly regularize nixpkgs handling 2023-07-04 14:20:50 -04:00
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