Commit Graph

39 Commits

Author SHA1 Message Date
Don-Swanson 457725ee5a Enhance link extraction logic in search function to handle cases with no result containers, improving robustness and accuracy of results. 2025-09-30 20:32:51 -05:00
Don-Swanson 0fe29daaf1 Add pre-release build and push step in GitHub Actions workflow for versioned releases 2025-09-23 23:52:52 -05:00
Don-Swanson 579d983db8 Update GitHub Actions workflows to trigger builds on release events and enforce versioning for PyPI publishing. Change application version to '1.0.0-beta'. 2025-09-23 23:47:11 -05:00
Don ba757b64e8 Update stale.yml 2025-09-15 08:31:29 -05:00
Don e24f2d751c Create stale.yml
Setup automation to close stale issues to discover what is actually still an issue.
2025-09-14 09:59:04 -05:00
xatier 9d7ab1e2f8 ci: update GitHub actions (#1155) 2024-09-30 11:22:42 -06:00
Ben Busby 06c2310e3a Update Docker base images, update workflows
Should fix issues with tomllib not being available in the docker related
builds, as well as the move from docker-compose to "docker compose" in
gh actions
2024-09-30 10:27:01 -06:00
Ben Busby 7a1ebfe975 Temporarily disable linux/arm/v7 builds
The arm/v7 builds have caused lots of problems due to the lack of
support from the cryptography library, and now issues related to
installing the latest version of cffi. As a result, this build variant
has been removed for now. It may or may not come back later, since the
amount of work just to figure out which library is broken and how to fix
it doesn't feel worth it anymore.
2024-03-06 12:31:38 -07:00
Ben Busby 8e867a5ace Remove pep8 workflow from ci
PEP-8 enforcements in the project are more of an annoyance than
anything. It doesn't really seem to add much value, and adds a lot of
friction to pull requests from developers who aren't familiar with the
style guide. Stylistic enforcements should just be done during PRs if
necessary (or a different style guide should be enforced).
2022-08-01 13:50:27 -06:00
Ben Busby f9ff781df3 Skip buildx on-success check for tagged builds
Tagged builds seem to erroneously fail the on-success check due to the
tests not having finished when the build begins. Since tagged builds are
only ever submitted once the tagged commit is confirmed to pass all
tests, this check will now be skipped.
2022-06-03 14:46:36 -06:00
jan Anja 5069838e69 Configure setup() using setup.cfg (#667)
Dependencies are not read from requirements.txt intentionally, so only
direct dependencies without version pinning are included.

Setuptools documentation:
https://setuptools.pypa.io/en/latest/userguide/declarative_config.html
2022-02-25 15:29:54 -07:00
Ben Busby 63301efb28 Push images to ghcr.io
Alternative container registries like ghcr.io are a good option for anyone
seeking to avoid things like docker hub's latest changes to rate limiting
2022-02-01 18:02:59 -07:00
Ben Busby df6aa59fbf Run buildx workflow on new tag
Fixes #630
2022-02-01 10:55:41 -07:00
Ben Busby 4dd2c581ac Add nightly container vuln scan
Introduces a new 'scan' workflow for scanning the main branch container for
vulnerabilities nightly. By default, this will fail for any 'medium' or higher
vulnerability. 

Fixes #613
2022-01-25 13:52:43 -07:00
Ben Busby 2e3c647591 Use test image tag for docker-compose tests
Also adds the ability to overwrite the image in docker-compose.yml,
which allows the CI build to use the same image for all docker tests.
The default is still 'benbusby/whoogle-search' though.
2022-01-25 12:42:24 -07:00
Ben Busby 72e5a227c8 Move bangs init to bg thread
Initializing the DDG bangs when running whoogle for the first time
creates an indeterminate amount of delay before the app becomes usable,
which makes usability tests (particularly w/ Docker) unreliable. This
moves the bang json init to a background thread and writes a temporary
empty dict to the bangs json file until the full bangs json can be used.
2022-01-25 12:28:06 -07:00
Ben Busby 6d178342ee Refactor Docker CI workflows
Split previous docker test CI into one for PRs and one for triggering
the main buildx workflow that deploys new images to Docker Hub.

Note that this needs to be further refactored soon to use reusable
workflows. The main portion of docker/docker-compose tests is duplicated
between the new main + test workflows.
2022-01-25 11:42:29 -07:00
Ben Busby a8afd49f84 Move docker tests after api/unit testing
It makes more sense to structure the order of tests to go from api and
unit testing -> validate docker image works as expected -> build and
deploy docker image.
2021-11-23 10:58:31 -07:00
Ben Busby baffb5fc81 Simplify docker tests
Only the healthcheck is really necessary for the workflow's purpose.
Running the full test suite is redundant.
2021-11-22 00:34:48 -07:00
Ben Busby 5a27d748d1 Create separate test workflow for docker
This expands on the current testing suite a bit by introducing a new
workflow for testing functionality within the docker container. It runs
the same test suite as the regular "test" workflow, but also performs a
health check after running the app for 10 seconds to ensure
functionality.

The buildx workflow now waits for the docker test script to finish
successfully, rather than the regular test workflow. This will hopefully
avoid situations where new images are pushed with issues that aren't
detected in regular testing of the app.
2021-11-22 00:26:25 -07:00
Ben Busby 782d4e160e Update cffi dep to 1.15.0 2021-10-21 12:41:23 -06:00
Ben Busby aff7b6c72f Fix latest image build workflow condition 2021-10-20 20:41:04 -06:00
Ben Busby d4e5984ccd Add check for event trigger in buildx action 2021-10-20 15:32:45 -06:00
Ben Busby 1b7d3edd30 Split latest and tagged buildx actions
Reduces redundancy with builds when creating a tag
2021-10-20 12:39:04 -06:00
Ben Busby 20976f2ab9 Exclude test dir from docker actions 2021-10-11 21:13:59 -06:00
Ben Busby c6716e6d46 Enable tag builds for pypi and buildx workflows 2021-10-11 20:22:29 -06:00
Ben Busby 60b36c3b19 Update buildx workflow
Buildx workflow now waits for tests to pass before building/uploading
new images.

There's also a separate step for building a properly formatted tag image
if triggered by a new tag.
2021-10-11 20:11:31 -06:00
Ben Busby 002e2103ad Simplify buildx workflow
There doesn't really need to be a 'develop' branch anymore, since all
work is committed directly to 'main', with tags to indicate
production-ready builds.

As a result, the buildx-dev workflow is pretty pointless.
2021-09-29 20:54:48 -06:00
Ben Busby 1729324fbd Run pep8 check on PRs 2021-09-27 20:40:51 -06:00
Ben Busby b4e2add146 Run GH action tests on PRs 2021-09-15 15:27:11 -06:00
Ben Busby d1e0a06ebd Move timestamp for dev builds into build process 2021-08-31 09:34:28 -06:00
Ben Busby c298b8447c Split PyPI action into separate jobs 2021-08-31 09:18:07 -06:00
Ben Busby 5d86326ae6 Append timestamp to TestPyPI build versions
This should allow the same "version" to be uploaded for each commit.
2021-08-31 09:00:55 -06:00
Ben Busby 4ad4ed5ff7 Publish to PyPI using GitHub Actions
Regular commits are all built and publish to TestPyPI, tagged commits
are published to PyPI.

This should finish the process of moving away from Travis CI, now that
both testing and PyPI deployments are handled in github actions.
2021-08-31 08:03:08 -06:00
Ben Busby 648a540126 Move all testing to github actions
The Travis CI folks are updating stuff and broke my tests, so I'm moving
over to github actions instead since that is (hopefully) less likely to
change moving forward.

Will need to move PyPi deployment to github actions as well.
2021-08-30 16:39:52 -06:00
Ben Busby b44762d157 Split buildx action into main and dev builds
Since Docker Hub no longer allows automated builds for free tier users,
the build process for new images needs to be moved to GitHub Actions.
The existing buildx workflow has worked pretty well for the most part,
but was only enabled for the develop branch and only pushed the
buildx-experimental tag. This addition allows pushes to the main branch
to build updates for the "latest" tag as well, which is more commonly
used I think.
2021-08-24 09:38:35 -06:00
Ben Busby d301ba81f3 Add custom builder image to buildx action
Also added debug to list architectures for buildx. Needless to say,
the buildx action is super flakey (as evidenced by a change to the
README breaking the entire build somehow).
2021-04-05 11:00:56 -04:00
Ben Busby 934749e0b8 Add docker buildx gh action
This automatically builds and pushes a cross platform image to Docker
Hub.
2021-01-05 17:53:58 -05:00
Ben Busby 375f4ee9fd PEP-8: Fix formatting issues, add CI workflow (#161)
Enforces PEP-8 formatting for all python code

Adds a github action build for checking pep8 formatting using pycodestyle
2020-12-17 16:06:47 -05:00