Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

huge refactor for the new datahub build/deploy CI/CD github actions workflow #117

Merged
merged 40 commits into from
Oct 10, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
40 commits
Select commit Hold shift + click to select a range
63ed8e2
huge refactor:
shaneknapp Jun 27, 2024
e0efb87
removing unused imports
shaneknapp Jun 27, 2024
8a92d85
disable some tests as we arent building or pushing anymore
shaneknapp Jun 27, 2024
88be478
update build python
shaneknapp Jun 27, 2024
7d5491e
add a little more messaging about tagging
shaneknapp Jun 27, 2024
2ea0e83
wording etc
shaneknapp Jun 27, 2024
758c6ed
add ability to override image and tag via the command line
shaneknapp Jun 28, 2024
acf5209
finish up image overrides
shaneknapp Jun 28, 2024
a665f21
more error checking
shaneknapp Jun 28, 2024
36f4db6
belay that, i was already error checking XD
shaneknapp Jun 28, 2024
355ecfd
be clear about tags w/overrides
shaneknapp Jun 29, 2024
1541cc1
the old deploy method is not needed any more
shaneknapp Jun 29, 2024
bf0c963
utils.py is no longer needed
shaneknapp Jun 29, 2024
4e72251
commitrange.py is no longer needed
shaneknapp Jun 29, 2024
22cc0d7
removing unnecessary imports
shaneknapp Jun 29, 2024
8bdaea7
every CLI arg now has help text!
shaneknapp Jul 1, 2024
0cd4295
reorder imports
shaneknapp Jul 1, 2024
3b3b5fc
ran through ruff delinter and fixed everything
shaneknapp Jul 1, 2024
f0d2bc1
minor formatting of help strings
shaneknapp Jul 1, 2024
1c2f459
add help text for --force
shaneknapp Jul 1, 2024
cc534cc
bump version, and udpate package metadata
shaneknapp Jul 2, 2024
fa7122f
remove all tests and circleci workflows
shaneknapp Jul 3, 2024
c3e5b43
better handling of no image tags
shaneknapp Aug 7, 2024
63b33f9
remove container registry auth code
shaneknapp Aug 16, 2024
c05f093
exit if CI environment is detected with helm debug or dry run specified
shaneknapp Aug 23, 2024
fca6412
explain CI limitations in help strings
shaneknapp Aug 23, 2024
9352e22
add env var requirement for helm debug and dry-run args
shaneknapp Aug 23, 2024
bd9902f
add comprehensive debugging/verbose output for auth module
shaneknapp Aug 31, 2024
3bed611
remove this line
shaneknapp Aug 31, 2024
683fc68
final bits of debugging/info output
shaneknapp Aug 31, 2024
19802d4
fixing typo in help text
shaneknapp Sep 3, 2024
beb6343
fixing typo in help text
shaneknapp Sep 25, 2024
3cdb8f7
re-add aws auth contextmanager, coz who knows if we'll ever need it
shaneknapp Sep 30, 2024
d267768
fixing newlines at EOF
shaneknapp Sep 30, 2024
d510ecf
formatting from ruff
shaneknapp Oct 8, 2024
4489c5a
adding min python version req for hubploy
shaneknapp Oct 10, 2024
7c1398b
adding python linter
shaneknapp Oct 10, 2024
ca5ec61
ruff format
shaneknapp Oct 10, 2024
cea3849
updated readme
shaneknapp Oct 10, 2024
f76a897
adding some whitespace to readme
shaneknapp Oct 10, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
55 changes: 0 additions & 55 deletions .circleci/config.yml

This file was deleted.

2 changes: 0 additions & 2 deletions .codecov.yml

This file was deleted.

14 changes: 0 additions & 14 deletions .github/workflows/docker-push.yaml

This file was deleted.

15 changes: 15 additions & 0 deletions .github/workflows/python-lint.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
name: "python lint"
on:
- pull_request

jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Install ruff
run: pip install ruff==0.6.9

- name: Lint python files
run: ruff check .
56 changes: 0 additions & 56 deletions Dockerfile

This file was deleted.

60 changes: 58 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,61 @@

Toolkit to deploy many z2jh based JupyterHubs

[![CircleCI](https://circleci.com/gh/yuvipanda/hubploy.svg?style=svg)](https://circleci.com/gh/pangeo-data/pangeo-cloud-federation)
[![Documentation Status](https://readthedocs.org/projects/hubploy/badge/?version=latest)](https://hubploy.readthedocs.io/en/latest/?badge=latest)
Usage:

```
hubploy deploy <deployment> <chart> <environment>
```

Help text:

```
$ hubploy --help
usage: hubploy [-h] [-d] [-D] [-v] {deploy} ...

positional arguments:
{deploy}
deploy Deploy a chart to the given environment.

options:
-h, --help show this help message and exit
-d, --debug Enable tool debug output (not including helm debug).
-D, --helm-debug Enable Helm debug output. This is not allowed to be used in a CI environment due to secrets being displayed in plain text, and the script will exit. To enable this option, set a local environment varible HUBPLOY_LOCAL_DEBUG=true
-v, --verbose Enable verbose output.
```

Deploy help:

```
hubploy deploy --help
usage: hubploy deploy [-h] [--namespace NAMESPACE] [--set SET] [--set-string SET_STRING] [--version VERSION] [--timeout TIMEOUT] [--force] [--atomic]
[--cleanup-on-fail] [--dry-run] [--image-overrides IMAGE_OVERRIDES [IMAGE_OVERRIDES ...]]
deployment chart {develop,staging,prod}

positional arguments:
deployment The name of the hub to deploy.
chart The path to the main hub chart.
{develop,staging,prod}
The environment to deploy to.

options:
-h, --help show this help message and exit
--namespace NAMESPACE
Helm option: the namespace to deploy to. If not specified, the namespace will be derived from the environment argument.
--set SET Helm option: set values on the command line (can specify multiple or separate values with commas: key1=val1,key2=val2)
--set-string SET_STRING
Helm option: set STRING values on the command line (can specify multiple or separate values with commas: key1=val1,key2=val2)
--version VERSION Helm option: specify a version constraint for the chart version to use. This constraint can be a specific tag (e.g. 1.1.1) or it may reference a
valid range (e.g. ^2.0.0). If this is not specified, the latest version is used.
--timeout TIMEOUT Helm option: time in seconds to wait for any individual Kubernetes operation (like Jobs for hooks, etc). Defaults to 300 seconds.
--force Helm option: force resource updates through a replacement strategy.
--atomic Helm option: if set, upgrade process rolls back changes made in case of failed upgrade. The --wait flag will be set automatically if --atomic is
used.
--cleanup-on-fail Helm option: allow deletion of new resources created in this upgrade when upgrade fails.
--dry-run Dry run the helm upgrade command. This also renders the chart to STDOUT. This is not allowed to be used in a CI environment due to secrets being
displayed in plain text, and the script will exit. To enable this option, set a local environment varible HUBPLOY_LOCAL_DEBUG=true
--image-overrides IMAGE_OVERRIDES [IMAGE_OVERRIDES ...]
Override one or more images and tags to deploy. Format is: <path_to_image1/image_name>:<tag1> <path_to_image2/image_name>:<tag2> ... IMPORTANT:
The order of images passed in must match the order in which they appear in hubploy.yaml and separated by spaces without quotes. You must always
specify a tag when overriding images.
```
Loading