Commit Graph

26 Commits

Author SHA1 Message Date
lwthiker
58e91b4253 Upload precompiled libcurl impersonate on release
Upload a tar file with libcurl-impersonate compiled for Ubuntu and macOS
automatically for each GitHub release. Previously only a statically
compiled version of the binary curl-impersonate was uploaded.
2022-06-03 20:09:11 +03:00
lwthiker
92a5b8c7ab Add support for impersonating Firefox 100
Add support for impersonating Firefox 100. The TLS signature is identical to
previous versions of Firefox.

In addition, upgrade NSS (Firefox's TLS library) to version 3.77 used by
Firefox 100. This is not strictly necessary as the previous version used
works just fine, but it's better keep up with the newest version.
2022-05-15 20:50:45 +03:00
lwthiker
7167328e37 Publish stripped binaries to GitHub release assets
To reduce size of built binaries, strip the binaries before publishing
them.
2022-05-14 18:50:18 +03:00
lwthiker
5b260dfa3c Add compiled binaries to GitHub releases 2022-05-14 10:09:03 +03:00
lwthiker
124f0740be Cache build files during GitHub action workflows (#60)
To speed up the automatic workflows, attempt to cache the slowest part
of the build, which is the compilation of the TLS libraries (NSS/BoringSSL).
2022-05-13 23:13:51 +03:00
lwthiker
2b4b284cc8 Add 'apt-get update' in GitHub action workflow
And change 'apt' to 'apt-get' to prevent the warning message:
'WARNING: apt does not have a stable CLI interface. Use with caution in
scripts.'
2022-04-30 13:58:11 +03:00
lwthiker
90012e78de Fix various issues with automatic tests on macOS 2022-04-30 13:56:33 +03:00
lwthiker
ad77483b70 Don't install Go on macOS GitHub Action runner
Go is already installed and conflicts with 'brew install go'.
2022-04-30 13:56:33 +03:00
lwthiker
8019a00959 Run the automatic tests on a macOS runner as well 2022-04-30 13:56:33 +03:00
lwthiker
7d86e2f285 Add make target to check that build is correct
Add a few checks as in f320cec to ensure that 'curl-impersonate' was
compiled with all the required features (compression, tls, http2).
2022-04-17 17:30:53 +03:00
lwthiker
842415f119 Add missing tests dependency in GitHub action 2022-04-12 22:21:13 +03:00
lwthiker
f1b31726dc Fix action failing on running pytest as sudo 2022-04-12 21:59:26 +03:00
lwthiker
e04e53b4d5 Use 'sudo' to launch pytest (because of tcpdump) 2022-04-12 17:32:29 +03:00
lwthiker
48d18cd8cd Add GitHub Action to test native builds
Add a GitHub action to compile and test native builds using the new
Makefile-based build system. Currently runs on Ubuntu and in the future
will run similarly on MacOS.
2022-04-12 16:53:22 +03:00
lwthiker
facd6e5551 Use configurable binaries directory in the tests
Locate curl-impersonate and libcurl-impersonate in a directory which is
configurable from the command line instead of looking for them in the
current directory. '--install-dir' is passed to pytest, where a 'bin'
and 'lib' directories are expected with (lib)curl-impersonate.

Rename the Actions file for the Docker build to allow the creation of
addition Action for native builds.
2022-04-12 16:50:24 +03:00
lwthiker
ebc8032615 Add more tags to alpine-based Docker Hub images 2022-03-10 13:23:12 +02:00
lwthiker
2e738cd7d0 Push the Alpine image for Firefox version as well 2022-03-10 12:50:17 +02:00
lwthiker
21af00356e Add action to push alpine images to Docker Hub
Add a GitHub action to push alpine images with curl-impersonate to
Docker Hub whenever a new release tag is created.
2022-03-10 12:22:27 +02:00
lwthiker
ce95990620 Split GitHub Action cache to two directories
The GitHub Action workflow uses a cache to speed up the Docker builds.
However, it seems that it only partially works, saving only the Docker
layers for the Firefox build. This is an attempt to solve it by using
two separate cache paths, one for each build.
2022-03-05 13:30:14 +02:00
lwthiker
a304c61522 Run CI on push to 'main' branch as well 2022-03-05 12:17:41 +02:00
lwthiker
0771c55799 Add Docker caching to GitHub actions workflow
Add layer caching to speed up the CI builds. In addition, optimize the
Dockerfiles by moving all the dependency installations (which are
unlikely to change much) to the initial layers.
2022-03-05 10:48:53 +02:00
lwthiker
867f23fb58 Use local Docker registry in GitHub Action
The tests container copies files from the build containers. In order for
this to work in the GitHub actions workflow, the build images need to be
uploaded to a local Docker registry first.
2022-03-05 10:20:07 +02:00
lwthiker
f6554b909e Add "load: true" to GitHub actions docker steps
Make the docker images in each step available to the next steps
in the GitHub workflow by specifying "load: true".
2022-03-04 19:24:06 +02:00
lwthiker
e13a644559 Add GitHub action steps to build and run the tests 2022-03-04 18:57:13 +02:00
lwthiker
be84f39250 Add checkout step to GitHub actions workflow 2022-03-04 18:12:46 +02:00
lwthiker
635f2ca63c Add GitHub actions workflow to build and test 2022-03-04 18:10:08 +02:00