├── .dockerignore ├── .flake8 ├── .github ├── dependabot.yml └── workflows │ ├── codeql.yml │ ├── e2e-tests.yml │ ├── gh-pages.yml │ ├── release.yml │ ├── scorecard.yml │ └── unit-tests.yml ├── .gitignore ├── .pre-commit-config.yaml ├── .prettierignore ├── .prettierrc.yaml ├── .readthedocs.yaml ├── LICENSE ├── README.md ├── biome.json ├── conftest.py ├── docker ├── Dockerfile ├── aerich.toml ├── demo │ ├── device │ │ ├── Dockerfile │ │ ├── config │ │ ├── entrypoint.sh │ │ ├── hwrevision │ │ ├── myscript.py │ │ ├── supervisord.conf │ │ ├── sw-versions │ │ └── swupdate.cfg │ ├── docker-compose.yml │ └── nginx │ │ ├── certs │ │ ├── server.crt │ │ └── server.key │ │ └── site.conf ├── dev.dockerfile └── docker-compose-dev.yml ├── docs ├── goosebit_forwarded_header.md ├── goosebit_simple_stats.md ├── img │ ├── goosebit-logo.png │ └── goosebit-logo.svg └── index.md ├── goosebit.yaml ├── goosebit ├── __init__.py ├── __main__.py ├── api │ ├── __init__.py │ ├── responses.py │ ├── routes.py │ ├── telemetry │ │ ├── __init__.py │ │ ├── metrics.py │ │ ├── prometheus │ │ │ ├── __init__.py │ │ │ ├── readers.py │ │ │ └── routes.py │ │ └── routes.py │ └── v1 │ │ ├── __init__.py │ │ ├── devices │ │ ├── __init__.py │ │ ├── device │ │ │ ├── __init__.py │ │ │ ├── responses.py │ │ │ └── routes.py │ │ ├── requests.py │ │ ├── responses.py │ │ └── routes.py │ │ ├── download │ │ ├── __init__.py │ │ └── routes.py │ │ ├── rollouts │ │ ├── __init__.py │ │ ├── requests.py │ │ ├── responses.py │ │ └── routes.py │ │ ├── routes.py │ │ ├── settings │ │ ├── __init__.py │ │ ├── routes.py │ │ └── users │ │ │ ├── __init__.py │ │ │ ├── requests.py │ │ │ ├── responses.py │ │ │ └── routes.py │ │ └── software │ │ ├── __init__.py │ │ ├── requests.py │ │ ├── responses.py │ │ └── routes.py ├── auth │ ├── __init__.py │ └── permissions.py ├── db │ ├── __init__.py │ ├── config.py │ ├── migrations │ │ └── models │ │ │ ├── 0_20240830054046_init.py │ │ │ ├── 1_20241109151811_update.py │ │ │ ├── 2_20241121113728_update.py │ │ │ ├── 3_20241121140210_update.py │ │ │ ├── 4_20250324110331_update.py │ │ │ ├── 4_20250402085235_rename_uuid_to_id.py │ │ │ ├── 5_20250619090242_null_feed.py │ │ │ └── 6_20250904081506_add_image_format.py │ ├── models.py │ └── pg_ssl_context.py ├── device_manager.py ├── plugins │ └── __init__.py ├── schema │ ├── __init__.py │ ├── devices.py │ ├── plugins.py │ ├── rollouts.py │ ├── software.py │ ├── updates.py │ └── users.py ├── settings │ ├── __init__.py │ ├── const.py │ └── schema.py ├── storage │ ├── __init__.py │ ├── base.py │ ├── filesystem.py │ └── s3.py ├── ui │ ├── __init__.py │ ├── bff │ │ ├── __init__.py │ │ ├── common │ │ │ ├── __init__.py │ │ │ ├── columns.py │ │ │ ├── requests.py │ │ │ ├── responses.py │ │ │ └── util.py │ │ ├── devices │ │ │ ├── __init__.py │ │ │ ├── device │ │ │ │ ├── __init__.py │ │ │ │ └── routes.py │ │ │ ├── requests.py │ │ │ ├── responses.py │ │ │ └── routes.py │ │ ├── download │ │ │ ├── __init__.py │ │ │ └── routes.py │ │ ├── rollouts │ │ │ ├── __init__.py │ │ │ ├── responses.py │ │ │ └── routes.py │ │ ├── routes.py │ │ ├── settings │ │ │ ├── __init__.py │ │ │ ├── routes.py │ │ │ └── users │ │ │ │ ├── __init__.py │ │ │ │ ├── responses.py │ │ │ │ └── routes.py │ │ └── software │ │ │ ├── __init__.py │ │ │ ├── responses.py │ │ │ └── routes.py │ ├── nav.py │ ├── routes.py │ ├── static │ │ ├── __init__.py │ │ ├── favicon.ico │ │ ├── favicon.svg │ │ ├── js │ │ │ ├── devices.js │ │ │ ├── login.js │ │ │ ├── logs.js │ │ │ ├── rollouts.js │ │ │ ├── settings.js │ │ │ ├── setup.js │ │ │ ├── software.js │ │ │ └── util.js │ │ └── svg │ │ │ └── goosebit-logo.svg │ └── templates │ │ ├── __init__.py │ │ ├── devices.html.jinja │ │ ├── login.html.jinja │ │ ├── logs.html.jinja │ │ ├── nav.html.jinja │ │ ├── rollouts.html.jinja │ │ ├── settings.html.jinja │ │ ├── setup.html.jinja │ │ └── software.html.jinja ├── updater │ ├── __init__.py │ ├── controller │ │ ├── __init__.py │ │ ├── routes.py │ │ └── v1 │ │ │ ├── __init__.py │ │ │ ├── routes.py │ │ │ └── schema.py │ └── routes.py ├── updates │ ├── __init__.py │ └── swdesc │ │ ├── __init__.py │ │ ├── func.py │ │ ├── rauc.py │ │ └── swu.py ├── users │ └── __init__.py └── util │ ├── __init__.py │ ├── path.py │ └── version.py ├── main.py ├── mkdocs.yml ├── plugins ├── goosebit_forwarded_header │ ├── README.md │ ├── goosebit_forwarded_header │ │ ├── __init__.py │ │ └── middleware │ │ │ ├── __init__.py │ │ │ └── forwarded_header.py │ ├── poetry.lock │ └── pyproject.toml └── goosebit_simple_stats │ ├── README.md │ ├── goosebit_simple_stats │ ├── __init__.py │ ├── api │ │ ├── __init__.py │ │ ├── routes.py │ │ └── v1 │ │ │ ├── __init__.py │ │ │ ├── routes.py │ │ │ └── stats │ │ │ ├── __init__.py │ │ │ ├── responses.py │ │ │ └── routes.py │ ├── schema │ │ ├── __init__.py │ │ └── show.py │ ├── settings │ │ ├── __init__.py │ │ ├── const.py │ │ └── schema.py │ └── ui │ │ ├── __init__.py │ │ ├── bff │ │ ├── __init__.py │ │ └── stats │ │ │ ├── __init__.py │ │ │ └── routes.py │ │ ├── routes.py │ │ ├── static │ │ ├── __init__.py │ │ └── js │ │ │ └── stats.js │ │ └── templates │ │ ├── __init__.py │ │ └── stats.html.jinja │ ├── poetry.lock │ └── pyproject.toml ├── poetry.lock ├── pyproject.toml ├── sample_data.py └── tests ├── __init__.py ├── e2e ├── __init__.py ├── docker │ ├── auth_server │ │ ├── Dockerfile │ │ └── server.py │ ├── goosebit │ │ ├── Dockerfile │ │ ├── aerich.toml │ │ ├── goosebit-external-auth-bearer.yaml │ │ ├── goosebit-external-auth.yaml │ │ └── goosebit.yaml │ └── swupdate │ │ ├── Dockerfile │ │ ├── config │ │ ├── entrypoint.sh │ │ ├── hwrevision │ │ ├── myscript.py │ │ ├── supervisord.conf │ │ ├── sw-versions │ │ └── swupdate.cfg ├── external_auth │ ├── docker-compose-bearer.yml │ ├── docker-compose-invalid.yml │ ├── docker-compose.yml │ └── tests │ │ ├── test_e2e_external_auth.py │ │ ├── test_e2e_external_auth_bearer_token.py │ │ └── test_e2e_external_auth_invalid_token.py ├── pytest.ini ├── s3 │ ├── docker-compose.yml │ ├── tests │ │ └── test_e2e_s3.py │ ├── update-v1.1.0.swu │ └── update.swu └── utils.py └── unit ├── __init__.py ├── api ├── __init__.py └── v1 │ ├── __init__.py │ ├── settings │ ├── __init__.py │ └── test_users_routes.py │ └── software │ ├── __init__.py │ ├── software-header-2.swu │ ├── software-header.swu │ └── test_routes.py ├── auth ├── __init__.py └── test_permissions.py ├── ui ├── __init__.py └── bff │ ├── __init__.py │ ├── devices │ ├── __init__.py │ └── test_routes.py │ ├── settings │ ├── __init__.py │ └── test_users_routes.py │ └── software │ ├── __init__.py │ └── test_routes.py ├── updater ├── __init__.py └── controller │ ├── __init__.py │ ├── test_device_auth.py │ └── v1 │ ├── __init__.py │ └── test_routes.py ├── updates ├── __init__.py ├── rauc │ ├── __init__.py │ ├── software-header.raucb │ └── test_swdesc.py └── swu │ ├── __init__.py │ ├── software-header.swu │ └── test_swdesc.py └── util ├── __init__.py └── test_version.py /.dockerignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/.dockerignore -------------------------------------------------------------------------------- /.flake8: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/.flake8 -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/.github/dependabot.yml -------------------------------------------------------------------------------- /.github/workflows/codeql.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/.github/workflows/codeql.yml -------------------------------------------------------------------------------- /.github/workflows/e2e-tests.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/.github/workflows/e2e-tests.yml -------------------------------------------------------------------------------- /.github/workflows/gh-pages.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/.github/workflows/gh-pages.yml -------------------------------------------------------------------------------- /.github/workflows/release.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/.github/workflows/release.yml -------------------------------------------------------------------------------- /.github/workflows/scorecard.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/.github/workflows/scorecard.yml -------------------------------------------------------------------------------- /.github/workflows/unit-tests.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/.github/workflows/unit-tests.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/.gitignore -------------------------------------------------------------------------------- /.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/.pre-commit-config.yaml -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | **/*.js 2 | -------------------------------------------------------------------------------- /.prettierrc.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/.prettierrc.yaml -------------------------------------------------------------------------------- /.readthedocs.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/.readthedocs.yaml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/README.md -------------------------------------------------------------------------------- /biome.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/biome.json -------------------------------------------------------------------------------- /conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/conftest.py -------------------------------------------------------------------------------- /docker/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/docker/Dockerfile -------------------------------------------------------------------------------- /docker/aerich.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/docker/aerich.toml -------------------------------------------------------------------------------- /docker/demo/device/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/docker/demo/device/Dockerfile -------------------------------------------------------------------------------- /docker/demo/device/config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/docker/demo/device/config -------------------------------------------------------------------------------- /docker/demo/device/entrypoint.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/docker/demo/device/entrypoint.sh -------------------------------------------------------------------------------- /docker/demo/device/hwrevision: -------------------------------------------------------------------------------- 1 | default 0.1.0 2 | -------------------------------------------------------------------------------- /docker/demo/device/myscript.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/docker/demo/device/myscript.py -------------------------------------------------------------------------------- /docker/demo/device/supervisord.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/docker/demo/device/supervisord.conf -------------------------------------------------------------------------------- /docker/demo/device/sw-versions: -------------------------------------------------------------------------------- 1 | default 0.1.0 2 | -------------------------------------------------------------------------------- /docker/demo/device/swupdate.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/docker/demo/device/swupdate.cfg -------------------------------------------------------------------------------- /docker/demo/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/docker/demo/docker-compose.yml -------------------------------------------------------------------------------- /docker/demo/nginx/certs/server.crt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/docker/demo/nginx/certs/server.crt -------------------------------------------------------------------------------- /docker/demo/nginx/certs/server.key: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/docker/demo/nginx/certs/server.key -------------------------------------------------------------------------------- /docker/demo/nginx/site.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/docker/demo/nginx/site.conf -------------------------------------------------------------------------------- /docker/dev.dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/docker/dev.dockerfile -------------------------------------------------------------------------------- /docker/docker-compose-dev.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/docker/docker-compose-dev.yml -------------------------------------------------------------------------------- /docs/goosebit_forwarded_header.md: -------------------------------------------------------------------------------- 1 | ../plugins/goosebit_forwarded_header/README.md -------------------------------------------------------------------------------- /docs/goosebit_simple_stats.md: -------------------------------------------------------------------------------- 1 | ../plugins/goosebit_simple_stats/README.md -------------------------------------------------------------------------------- /docs/img/goosebit-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/docs/img/goosebit-logo.png -------------------------------------------------------------------------------- /docs/img/goosebit-logo.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/docs/img/goosebit-logo.svg -------------------------------------------------------------------------------- /docs/index.md: -------------------------------------------------------------------------------- 1 | ../README.md -------------------------------------------------------------------------------- /goosebit.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit.yaml -------------------------------------------------------------------------------- /goosebit/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/__init__.py -------------------------------------------------------------------------------- /goosebit/__main__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/__main__.py -------------------------------------------------------------------------------- /goosebit/api/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/__init__.py -------------------------------------------------------------------------------- /goosebit/api/responses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/responses.py -------------------------------------------------------------------------------- /goosebit/api/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/routes.py -------------------------------------------------------------------------------- /goosebit/api/telemetry/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/telemetry/__init__.py -------------------------------------------------------------------------------- /goosebit/api/telemetry/metrics.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/telemetry/metrics.py -------------------------------------------------------------------------------- /goosebit/api/telemetry/prometheus/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/telemetry/prometheus/__init__.py -------------------------------------------------------------------------------- /goosebit/api/telemetry/prometheus/readers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/telemetry/prometheus/readers.py -------------------------------------------------------------------------------- /goosebit/api/telemetry/prometheus/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/telemetry/prometheus/routes.py -------------------------------------------------------------------------------- /goosebit/api/telemetry/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/telemetry/routes.py -------------------------------------------------------------------------------- /goosebit/api/v1/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/v1/__init__.py -------------------------------------------------------------------------------- /goosebit/api/v1/devices/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/v1/devices/__init__.py -------------------------------------------------------------------------------- /goosebit/api/v1/devices/device/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/v1/devices/device/__init__.py -------------------------------------------------------------------------------- /goosebit/api/v1/devices/device/responses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/v1/devices/device/responses.py -------------------------------------------------------------------------------- /goosebit/api/v1/devices/device/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/v1/devices/device/routes.py -------------------------------------------------------------------------------- /goosebit/api/v1/devices/requests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/v1/devices/requests.py -------------------------------------------------------------------------------- /goosebit/api/v1/devices/responses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/v1/devices/responses.py -------------------------------------------------------------------------------- /goosebit/api/v1/devices/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/v1/devices/routes.py -------------------------------------------------------------------------------- /goosebit/api/v1/download/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/v1/download/__init__.py -------------------------------------------------------------------------------- /goosebit/api/v1/download/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/v1/download/routes.py -------------------------------------------------------------------------------- /goosebit/api/v1/rollouts/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/v1/rollouts/__init__.py -------------------------------------------------------------------------------- /goosebit/api/v1/rollouts/requests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/v1/rollouts/requests.py -------------------------------------------------------------------------------- /goosebit/api/v1/rollouts/responses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/v1/rollouts/responses.py -------------------------------------------------------------------------------- /goosebit/api/v1/rollouts/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/v1/rollouts/routes.py -------------------------------------------------------------------------------- /goosebit/api/v1/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/v1/routes.py -------------------------------------------------------------------------------- /goosebit/api/v1/settings/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/v1/settings/__init__.py -------------------------------------------------------------------------------- /goosebit/api/v1/settings/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/v1/settings/routes.py -------------------------------------------------------------------------------- /goosebit/api/v1/settings/users/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/v1/settings/users/__init__.py -------------------------------------------------------------------------------- /goosebit/api/v1/settings/users/requests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/v1/settings/users/requests.py -------------------------------------------------------------------------------- /goosebit/api/v1/settings/users/responses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/v1/settings/users/responses.py -------------------------------------------------------------------------------- /goosebit/api/v1/settings/users/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/v1/settings/users/routes.py -------------------------------------------------------------------------------- /goosebit/api/v1/software/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/v1/software/__init__.py -------------------------------------------------------------------------------- /goosebit/api/v1/software/requests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/v1/software/requests.py -------------------------------------------------------------------------------- /goosebit/api/v1/software/responses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/v1/software/responses.py -------------------------------------------------------------------------------- /goosebit/api/v1/software/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/api/v1/software/routes.py -------------------------------------------------------------------------------- /goosebit/auth/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/auth/__init__.py -------------------------------------------------------------------------------- /goosebit/auth/permissions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/auth/permissions.py -------------------------------------------------------------------------------- /goosebit/db/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/db/__init__.py -------------------------------------------------------------------------------- /goosebit/db/config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/db/config.py -------------------------------------------------------------------------------- /goosebit/db/migrations/models/0_20240830054046_init.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/db/migrations/models/0_20240830054046_init.py -------------------------------------------------------------------------------- /goosebit/db/migrations/models/1_20241109151811_update.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/db/migrations/models/1_20241109151811_update.py -------------------------------------------------------------------------------- /goosebit/db/migrations/models/2_20241121113728_update.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/db/migrations/models/2_20241121113728_update.py -------------------------------------------------------------------------------- /goosebit/db/migrations/models/3_20241121140210_update.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/db/migrations/models/3_20241121140210_update.py -------------------------------------------------------------------------------- /goosebit/db/migrations/models/4_20250324110331_update.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/db/migrations/models/4_20250324110331_update.py -------------------------------------------------------------------------------- /goosebit/db/migrations/models/4_20250402085235_rename_uuid_to_id.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/db/migrations/models/4_20250402085235_rename_uuid_to_id.py -------------------------------------------------------------------------------- /goosebit/db/migrations/models/5_20250619090242_null_feed.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/db/migrations/models/5_20250619090242_null_feed.py -------------------------------------------------------------------------------- /goosebit/db/migrations/models/6_20250904081506_add_image_format.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/db/migrations/models/6_20250904081506_add_image_format.py -------------------------------------------------------------------------------- /goosebit/db/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/db/models.py -------------------------------------------------------------------------------- /goosebit/db/pg_ssl_context.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/db/pg_ssl_context.py -------------------------------------------------------------------------------- /goosebit/device_manager.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/device_manager.py -------------------------------------------------------------------------------- /goosebit/plugins/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/plugins/__init__.py -------------------------------------------------------------------------------- /goosebit/schema/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /goosebit/schema/devices.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/schema/devices.py -------------------------------------------------------------------------------- /goosebit/schema/plugins.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/schema/plugins.py -------------------------------------------------------------------------------- /goosebit/schema/rollouts.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/schema/rollouts.py -------------------------------------------------------------------------------- /goosebit/schema/software.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/schema/software.py -------------------------------------------------------------------------------- /goosebit/schema/updates.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/schema/updates.py -------------------------------------------------------------------------------- /goosebit/schema/users.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/schema/users.py -------------------------------------------------------------------------------- /goosebit/settings/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/settings/__init__.py -------------------------------------------------------------------------------- /goosebit/settings/const.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/settings/const.py -------------------------------------------------------------------------------- /goosebit/settings/schema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/settings/schema.py -------------------------------------------------------------------------------- /goosebit/storage/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/storage/__init__.py -------------------------------------------------------------------------------- /goosebit/storage/base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/storage/base.py -------------------------------------------------------------------------------- /goosebit/storage/filesystem.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/storage/filesystem.py -------------------------------------------------------------------------------- /goosebit/storage/s3.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/storage/s3.py -------------------------------------------------------------------------------- /goosebit/ui/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/__init__.py -------------------------------------------------------------------------------- /goosebit/ui/bff/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/bff/__init__.py -------------------------------------------------------------------------------- /goosebit/ui/bff/common/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /goosebit/ui/bff/common/columns.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/bff/common/columns.py -------------------------------------------------------------------------------- /goosebit/ui/bff/common/requests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/bff/common/requests.py -------------------------------------------------------------------------------- /goosebit/ui/bff/common/responses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/bff/common/responses.py -------------------------------------------------------------------------------- /goosebit/ui/bff/common/util.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/bff/common/util.py -------------------------------------------------------------------------------- /goosebit/ui/bff/devices/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/bff/devices/__init__.py -------------------------------------------------------------------------------- /goosebit/ui/bff/devices/device/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/bff/devices/device/__init__.py -------------------------------------------------------------------------------- /goosebit/ui/bff/devices/device/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/bff/devices/device/routes.py -------------------------------------------------------------------------------- /goosebit/ui/bff/devices/requests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/bff/devices/requests.py -------------------------------------------------------------------------------- /goosebit/ui/bff/devices/responses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/bff/devices/responses.py -------------------------------------------------------------------------------- /goosebit/ui/bff/devices/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/bff/devices/routes.py -------------------------------------------------------------------------------- /goosebit/ui/bff/download/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/bff/download/__init__.py -------------------------------------------------------------------------------- /goosebit/ui/bff/download/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/bff/download/routes.py -------------------------------------------------------------------------------- /goosebit/ui/bff/rollouts/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/bff/rollouts/__init__.py -------------------------------------------------------------------------------- /goosebit/ui/bff/rollouts/responses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/bff/rollouts/responses.py -------------------------------------------------------------------------------- /goosebit/ui/bff/rollouts/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/bff/rollouts/routes.py -------------------------------------------------------------------------------- /goosebit/ui/bff/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/bff/routes.py -------------------------------------------------------------------------------- /goosebit/ui/bff/settings/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/bff/settings/__init__.py -------------------------------------------------------------------------------- /goosebit/ui/bff/settings/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/bff/settings/routes.py -------------------------------------------------------------------------------- /goosebit/ui/bff/settings/users/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/bff/settings/users/__init__.py -------------------------------------------------------------------------------- /goosebit/ui/bff/settings/users/responses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/bff/settings/users/responses.py -------------------------------------------------------------------------------- /goosebit/ui/bff/settings/users/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/bff/settings/users/routes.py -------------------------------------------------------------------------------- /goosebit/ui/bff/software/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/bff/software/__init__.py -------------------------------------------------------------------------------- /goosebit/ui/bff/software/responses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/bff/software/responses.py -------------------------------------------------------------------------------- /goosebit/ui/bff/software/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/bff/software/routes.py -------------------------------------------------------------------------------- /goosebit/ui/nav.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/nav.py -------------------------------------------------------------------------------- /goosebit/ui/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/routes.py -------------------------------------------------------------------------------- /goosebit/ui/static/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/static/__init__.py -------------------------------------------------------------------------------- /goosebit/ui/static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/static/favicon.ico -------------------------------------------------------------------------------- /goosebit/ui/static/favicon.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/static/favicon.svg -------------------------------------------------------------------------------- /goosebit/ui/static/js/devices.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/static/js/devices.js -------------------------------------------------------------------------------- /goosebit/ui/static/js/login.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/static/js/login.js -------------------------------------------------------------------------------- /goosebit/ui/static/js/logs.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/static/js/logs.js -------------------------------------------------------------------------------- /goosebit/ui/static/js/rollouts.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/static/js/rollouts.js -------------------------------------------------------------------------------- /goosebit/ui/static/js/settings.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/static/js/settings.js -------------------------------------------------------------------------------- /goosebit/ui/static/js/setup.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/static/js/setup.js -------------------------------------------------------------------------------- /goosebit/ui/static/js/software.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/static/js/software.js -------------------------------------------------------------------------------- /goosebit/ui/static/js/util.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/static/js/util.js -------------------------------------------------------------------------------- /goosebit/ui/static/svg/goosebit-logo.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/static/svg/goosebit-logo.svg -------------------------------------------------------------------------------- /goosebit/ui/templates/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/templates/__init__.py -------------------------------------------------------------------------------- /goosebit/ui/templates/devices.html.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/templates/devices.html.jinja -------------------------------------------------------------------------------- /goosebit/ui/templates/login.html.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/templates/login.html.jinja -------------------------------------------------------------------------------- /goosebit/ui/templates/logs.html.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/templates/logs.html.jinja -------------------------------------------------------------------------------- /goosebit/ui/templates/nav.html.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/templates/nav.html.jinja -------------------------------------------------------------------------------- /goosebit/ui/templates/rollouts.html.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/templates/rollouts.html.jinja -------------------------------------------------------------------------------- /goosebit/ui/templates/settings.html.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/templates/settings.html.jinja -------------------------------------------------------------------------------- /goosebit/ui/templates/setup.html.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/templates/setup.html.jinja -------------------------------------------------------------------------------- /goosebit/ui/templates/software.html.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/ui/templates/software.html.jinja -------------------------------------------------------------------------------- /goosebit/updater/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/updater/__init__.py -------------------------------------------------------------------------------- /goosebit/updater/controller/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/updater/controller/__init__.py -------------------------------------------------------------------------------- /goosebit/updater/controller/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/updater/controller/routes.py -------------------------------------------------------------------------------- /goosebit/updater/controller/v1/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/updater/controller/v1/__init__.py -------------------------------------------------------------------------------- /goosebit/updater/controller/v1/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/updater/controller/v1/routes.py -------------------------------------------------------------------------------- /goosebit/updater/controller/v1/schema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/updater/controller/v1/schema.py -------------------------------------------------------------------------------- /goosebit/updater/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/updater/routes.py -------------------------------------------------------------------------------- /goosebit/updates/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/updates/__init__.py -------------------------------------------------------------------------------- /goosebit/updates/swdesc/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/updates/swdesc/__init__.py -------------------------------------------------------------------------------- /goosebit/updates/swdesc/func.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/updates/swdesc/func.py -------------------------------------------------------------------------------- /goosebit/updates/swdesc/rauc.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/updates/swdesc/rauc.py -------------------------------------------------------------------------------- /goosebit/updates/swdesc/swu.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/updates/swdesc/swu.py -------------------------------------------------------------------------------- /goosebit/users/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/users/__init__.py -------------------------------------------------------------------------------- /goosebit/util/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /goosebit/util/path.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/util/path.py -------------------------------------------------------------------------------- /goosebit/util/version.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/goosebit/util/version.py -------------------------------------------------------------------------------- /main.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/main.py -------------------------------------------------------------------------------- /mkdocs.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/mkdocs.yml -------------------------------------------------------------------------------- /plugins/goosebit_forwarded_header/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_forwarded_header/README.md -------------------------------------------------------------------------------- /plugins/goosebit_forwarded_header/goosebit_forwarded_header/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_forwarded_header/goosebit_forwarded_header/__init__.py -------------------------------------------------------------------------------- /plugins/goosebit_forwarded_header/goosebit_forwarded_header/middleware/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_forwarded_header/goosebit_forwarded_header/middleware/__init__.py -------------------------------------------------------------------------------- /plugins/goosebit_forwarded_header/goosebit_forwarded_header/middleware/forwarded_header.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_forwarded_header/goosebit_forwarded_header/middleware/forwarded_header.py -------------------------------------------------------------------------------- /plugins/goosebit_forwarded_header/poetry.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_forwarded_header/poetry.lock -------------------------------------------------------------------------------- /plugins/goosebit_forwarded_header/pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_forwarded_header/pyproject.toml -------------------------------------------------------------------------------- /plugins/goosebit_simple_stats/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_simple_stats/README.md -------------------------------------------------------------------------------- /plugins/goosebit_simple_stats/goosebit_simple_stats/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_simple_stats/goosebit_simple_stats/__init__.py -------------------------------------------------------------------------------- /plugins/goosebit_simple_stats/goosebit_simple_stats/api/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_simple_stats/goosebit_simple_stats/api/__init__.py -------------------------------------------------------------------------------- /plugins/goosebit_simple_stats/goosebit_simple_stats/api/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_simple_stats/goosebit_simple_stats/api/routes.py -------------------------------------------------------------------------------- /plugins/goosebit_simple_stats/goosebit_simple_stats/api/v1/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_simple_stats/goosebit_simple_stats/api/v1/__init__.py -------------------------------------------------------------------------------- /plugins/goosebit_simple_stats/goosebit_simple_stats/api/v1/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_simple_stats/goosebit_simple_stats/api/v1/routes.py -------------------------------------------------------------------------------- /plugins/goosebit_simple_stats/goosebit_simple_stats/api/v1/stats/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_simple_stats/goosebit_simple_stats/api/v1/stats/__init__.py -------------------------------------------------------------------------------- /plugins/goosebit_simple_stats/goosebit_simple_stats/api/v1/stats/responses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_simple_stats/goosebit_simple_stats/api/v1/stats/responses.py -------------------------------------------------------------------------------- /plugins/goosebit_simple_stats/goosebit_simple_stats/api/v1/stats/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_simple_stats/goosebit_simple_stats/api/v1/stats/routes.py -------------------------------------------------------------------------------- /plugins/goosebit_simple_stats/goosebit_simple_stats/schema/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_simple_stats/goosebit_simple_stats/schema/__init__.py -------------------------------------------------------------------------------- /plugins/goosebit_simple_stats/goosebit_simple_stats/schema/show.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_simple_stats/goosebit_simple_stats/schema/show.py -------------------------------------------------------------------------------- /plugins/goosebit_simple_stats/goosebit_simple_stats/settings/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_simple_stats/goosebit_simple_stats/settings/__init__.py -------------------------------------------------------------------------------- /plugins/goosebit_simple_stats/goosebit_simple_stats/settings/const.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_simple_stats/goosebit_simple_stats/settings/const.py -------------------------------------------------------------------------------- /plugins/goosebit_simple_stats/goosebit_simple_stats/settings/schema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_simple_stats/goosebit_simple_stats/settings/schema.py -------------------------------------------------------------------------------- /plugins/goosebit_simple_stats/goosebit_simple_stats/ui/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_simple_stats/goosebit_simple_stats/ui/__init__.py -------------------------------------------------------------------------------- /plugins/goosebit_simple_stats/goosebit_simple_stats/ui/bff/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_simple_stats/goosebit_simple_stats/ui/bff/__init__.py -------------------------------------------------------------------------------- /plugins/goosebit_simple_stats/goosebit_simple_stats/ui/bff/stats/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_simple_stats/goosebit_simple_stats/ui/bff/stats/__init__.py -------------------------------------------------------------------------------- /plugins/goosebit_simple_stats/goosebit_simple_stats/ui/bff/stats/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_simple_stats/goosebit_simple_stats/ui/bff/stats/routes.py -------------------------------------------------------------------------------- /plugins/goosebit_simple_stats/goosebit_simple_stats/ui/routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_simple_stats/goosebit_simple_stats/ui/routes.py -------------------------------------------------------------------------------- /plugins/goosebit_simple_stats/goosebit_simple_stats/ui/static/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_simple_stats/goosebit_simple_stats/ui/static/__init__.py -------------------------------------------------------------------------------- /plugins/goosebit_simple_stats/goosebit_simple_stats/ui/static/js/stats.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_simple_stats/goosebit_simple_stats/ui/static/js/stats.js -------------------------------------------------------------------------------- /plugins/goosebit_simple_stats/goosebit_simple_stats/ui/templates/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_simple_stats/goosebit_simple_stats/ui/templates/__init__.py -------------------------------------------------------------------------------- /plugins/goosebit_simple_stats/goosebit_simple_stats/ui/templates/stats.html.jinja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_simple_stats/goosebit_simple_stats/ui/templates/stats.html.jinja -------------------------------------------------------------------------------- /plugins/goosebit_simple_stats/poetry.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_simple_stats/poetry.lock -------------------------------------------------------------------------------- /plugins/goosebit_simple_stats/pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/plugins/goosebit_simple_stats/pyproject.toml -------------------------------------------------------------------------------- /poetry.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/poetry.lock -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/pyproject.toml -------------------------------------------------------------------------------- /sample_data.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/sample_data.py -------------------------------------------------------------------------------- /tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/e2e/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/e2e/docker/auth_server/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/e2e/docker/auth_server/Dockerfile -------------------------------------------------------------------------------- /tests/e2e/docker/auth_server/server.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/e2e/docker/auth_server/server.py -------------------------------------------------------------------------------- /tests/e2e/docker/goosebit/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/e2e/docker/goosebit/Dockerfile -------------------------------------------------------------------------------- /tests/e2e/docker/goosebit/aerich.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/e2e/docker/goosebit/aerich.toml -------------------------------------------------------------------------------- /tests/e2e/docker/goosebit/goosebit-external-auth-bearer.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/e2e/docker/goosebit/goosebit-external-auth-bearer.yaml -------------------------------------------------------------------------------- /tests/e2e/docker/goosebit/goosebit-external-auth.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/e2e/docker/goosebit/goosebit-external-auth.yaml -------------------------------------------------------------------------------- /tests/e2e/docker/goosebit/goosebit.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/e2e/docker/goosebit/goosebit.yaml -------------------------------------------------------------------------------- /tests/e2e/docker/swupdate/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/e2e/docker/swupdate/Dockerfile -------------------------------------------------------------------------------- /tests/e2e/docker/swupdate/config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/e2e/docker/swupdate/config -------------------------------------------------------------------------------- /tests/e2e/docker/swupdate/entrypoint.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/e2e/docker/swupdate/entrypoint.sh -------------------------------------------------------------------------------- /tests/e2e/docker/swupdate/hwrevision: -------------------------------------------------------------------------------- 1 | default 0.1.0 2 | -------------------------------------------------------------------------------- /tests/e2e/docker/swupdate/myscript.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/e2e/docker/swupdate/myscript.py -------------------------------------------------------------------------------- /tests/e2e/docker/swupdate/supervisord.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/e2e/docker/swupdate/supervisord.conf -------------------------------------------------------------------------------- /tests/e2e/docker/swupdate/sw-versions: -------------------------------------------------------------------------------- 1 | default 0.1.0 2 | -------------------------------------------------------------------------------- /tests/e2e/docker/swupdate/swupdate.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/e2e/docker/swupdate/swupdate.cfg -------------------------------------------------------------------------------- /tests/e2e/external_auth/docker-compose-bearer.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/e2e/external_auth/docker-compose-bearer.yml -------------------------------------------------------------------------------- /tests/e2e/external_auth/docker-compose-invalid.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/e2e/external_auth/docker-compose-invalid.yml -------------------------------------------------------------------------------- /tests/e2e/external_auth/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/e2e/external_auth/docker-compose.yml -------------------------------------------------------------------------------- /tests/e2e/external_auth/tests/test_e2e_external_auth.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/e2e/external_auth/tests/test_e2e_external_auth.py -------------------------------------------------------------------------------- /tests/e2e/external_auth/tests/test_e2e_external_auth_bearer_token.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/e2e/external_auth/tests/test_e2e_external_auth_bearer_token.py -------------------------------------------------------------------------------- /tests/e2e/external_auth/tests/test_e2e_external_auth_invalid_token.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/e2e/external_auth/tests/test_e2e_external_auth_invalid_token.py -------------------------------------------------------------------------------- /tests/e2e/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/e2e/pytest.ini -------------------------------------------------------------------------------- /tests/e2e/s3/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/e2e/s3/docker-compose.yml -------------------------------------------------------------------------------- /tests/e2e/s3/tests/test_e2e_s3.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/e2e/s3/tests/test_e2e_s3.py -------------------------------------------------------------------------------- /tests/e2e/s3/update-v1.1.0.swu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/e2e/s3/update-v1.1.0.swu -------------------------------------------------------------------------------- /tests/e2e/s3/update.swu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/e2e/s3/update.swu -------------------------------------------------------------------------------- /tests/e2e/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/e2e/utils.py -------------------------------------------------------------------------------- /tests/unit/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/unit/api/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/unit/api/v1/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/unit/api/v1/settings/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/unit/api/v1/settings/test_users_routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/unit/api/v1/settings/test_users_routes.py -------------------------------------------------------------------------------- /tests/unit/api/v1/software/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/unit/api/v1/software/software-header-2.swu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/unit/api/v1/software/software-header-2.swu -------------------------------------------------------------------------------- /tests/unit/api/v1/software/software-header.swu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/unit/api/v1/software/software-header.swu -------------------------------------------------------------------------------- /tests/unit/api/v1/software/test_routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/unit/api/v1/software/test_routes.py -------------------------------------------------------------------------------- /tests/unit/auth/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/unit/auth/test_permissions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/unit/auth/test_permissions.py -------------------------------------------------------------------------------- /tests/unit/ui/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/unit/ui/bff/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/unit/ui/bff/devices/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/unit/ui/bff/devices/test_routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/unit/ui/bff/devices/test_routes.py -------------------------------------------------------------------------------- /tests/unit/ui/bff/settings/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/unit/ui/bff/settings/test_users_routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/unit/ui/bff/settings/test_users_routes.py -------------------------------------------------------------------------------- /tests/unit/ui/bff/software/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/unit/ui/bff/software/test_routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/unit/ui/bff/software/test_routes.py -------------------------------------------------------------------------------- /tests/unit/updater/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/unit/updater/controller/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/unit/updater/controller/test_device_auth.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/unit/updater/controller/test_device_auth.py -------------------------------------------------------------------------------- /tests/unit/updater/controller/v1/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/unit/updater/controller/v1/test_routes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/unit/updater/controller/v1/test_routes.py -------------------------------------------------------------------------------- /tests/unit/updates/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/unit/updates/rauc/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/unit/updates/rauc/software-header.raucb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/unit/updates/rauc/software-header.raucb -------------------------------------------------------------------------------- /tests/unit/updates/rauc/test_swdesc.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/unit/updates/rauc/test_swdesc.py -------------------------------------------------------------------------------- /tests/unit/updates/swu/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/unit/updates/swu/software-header.swu: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/unit/updates/swu/software-header.swu -------------------------------------------------------------------------------- /tests/unit/updates/swu/test_swdesc.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/unit/updates/swu/test_swdesc.py -------------------------------------------------------------------------------- /tests/unit/util/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/unit/util/test_version.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UpstreamDataInc/goosebit/HEAD/tests/unit/util/test_version.py --------------------------------------------------------------------------------