@fishawack/lab-env 5.4.0-beta.1 → 5.5.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,49 @@
1
1
  ## Changelog
2
2
 
3
+ ### 5.5.0-beta.1 (2026-04-13)
4
+
5
+ #### Features
6
+
7
+ * content logic from now moved to lab-env in backwards compatible way ([2d836ce](https://bitbucket.org/fishawackdigital/lab-env/commits/2d836cec5bc9d429b7fdc544c5fc1e8c3b749124))
8
+ * extract snyk scan into standalone fw scan command ([abba628](https://bitbucket.org/fishawackdigital/lab-env/commits/abba628183fa94da5a21a14eb014c13a23036f84))
9
+ * **python:** added healthcheck ([ca6e323](https://bitbucket.org/fishawackdigital/lab-env/commits/ca6e323487aaae201eabe34e5208845585d182d4))
10
+ * **workspace:** support adding and removing projects from existing workspaces ([d70bf41](https://bitbucket.org/fishawackdigital/lab-env/commits/d70bf4130dffe412a15e8d8c6c3e6777daac65d3))
11
+
12
+ #### Bug Fixes
13
+
14
+ * allow blob as default-src on csp ([3cea3d4](https://bitbucket.org/fishawackdigital/lab-env/commits/3cea3d4bbd8bcd0ffdb6293967e4248ed542e8cf))
15
+ * csps now include worker-src with blob and self support ([bbe35b8](https://bitbucket.org/fishawackdigital/lab-env/commits/bbe35b807153d1af53bad0872cc6461b8c39e92f))
16
+ * scans now all run before errors thrown and always tackle lock files ([f212df0](https://bitbucket.org/fishawackdigital/lab-env/commits/f212df0cc1e6d5373c6bffcbde7e4e1ac2784db6))
17
+ * split snyk scans per platform with project-name flag ([7d89539](https://bitbucket.org/fishawackdigital/lab-env/commits/7d895395359e6f9d594e264f9b0bcf2e5a59c3bd))
18
+
19
+ #### Build Updates
20
+
21
+ * added python as boilerplate option ([8695c48](https://bitbucket.org/fishawackdigital/lab-env/commits/8695c48a763f623fe852b029663d8f2d958ba383))
22
+
23
+ ### 5.4.0 (2026-03-12)
24
+
25
+ #### Features
26
+
27
+ * added a prune command ([0775617](https://bitbucket.org/fishawackdigital/lab-env/commits/0775617e763d9833e78633df48d5560ac4bb4ea5))
28
+ * added more consistent prune flags to handle all clients and regions at once ([c2ff371](https://bitbucket.org/fishawackdigital/lab-env/commits/c2ff37189aa137291d1dc906b187ab808f0ec3c2))
29
+ * added new cloudfront methods ([8c9acf3](https://bitbucket.org/fishawackdigital/lab-env/commits/8c9acf39899147affb95476fd89b967eea57826c))
30
+ * created prune command for cloudfront and application version pruning ([be3ba54](https://bitbucket.org/fishawackdigital/lab-env/commits/be3ba5468187e5733a94e0bd266c8dfc2748e821))
31
+ * ignore double dollar for webdriverio shorthand ([044c457](https://bitbucket.org/fishawackdigital/lab-env/commits/044c4570c1d09161eb97835e9d1947d046866e1a))
32
+
33
+ #### Bug Fixes
34
+
35
+ * add missing elasticcache permission on eb managed update profile ([a21bf3d](https://bitbucket.org/fishawackdigital/lab-env/commits/a21bf3de4e4014adde912711e7d47ed9b25904f2))
36
+ * add retrys and backoff and store the client and region on delete command ([36024b9](https://bitbucket.org/fishawackdigital/lab-env/commits/36024b96fe1ba42054efd280c08cb411dfc9a16e))
37
+ * added elastic cache to fulsltack deploy permissions ([c94dc47](https://bitbucket.org/fishawackdigital/lab-env/commits/c94dc47a971a6fe6818127573d306a9bcf28b19f))
38
+ * own venv dir so ci can remove correcty ([9b42c77](https://bitbucket.org/fishawackdigital/lab-env/commits/9b42c7729411142101b2f5b2f07f79a5b8363178))
39
+ * python now maps like other containers with user and ssh for private packages ([fb04737](https://bitbucket.org/fishawackdigital/lab-env/commits/fb047378844d44b5f79dc67e0d089819cfdde82f))
40
+ * remove client from iam signature as it broke permissions ([777f58f](https://bitbucket.org/fishawackdigital/lab-env/commits/777f58fa20403940ba2cd6cb4aa384fbf7f4553a))
41
+
42
+ #### Build Updates
43
+
44
+ * bumped fishawack/lab-env-python-0 to 1.1.0 ([db2ffd1](https://bitbucket.org/fishawackdigital/lab-env/commits/db2ffd1a9fe9be7029fc1b434072bbbccaa670b4))
45
+ * bumped fishawack/lab-env-python-0 to 1.1.1 ([9a70106](https://bitbucket.org/fishawackdigital/lab-env/commits/9a70106dd9778ee23ab04039eed692788b7199c8))
46
+
3
47
  ### 5.4.0-beta.1 (2026-03-12)
4
48
 
5
49
  #### Features
package/_Ai/python-3.md CHANGED
@@ -1,42 +1,45 @@
1
1
  ---
2
- applyTo: "src/**/*"
2
+ applyTo: "**/*.py"
3
3
  ---
4
4
 
5
- # GitHub Copilot Instructions for Python Project
5
+ # Python Project Instructions
6
6
 
7
- ## Project Overview
7
+ ## Package Management
8
8
 
9
- This is a Python application that runs entirely in the host machine. All Python and pip operations must be executed within the appropriate environment using `venv`, `pip` and `python` for the python executable.
9
+ Uses **uv** (not pip). Dependencies defined in `pyproject.toml` with `uv.lock`. No `requirements.txt`.
10
10
 
11
- ## Project Management
11
+ All commands run through the `fw` container orchestration manager:
12
12
 
13
- - The codebase follows a standard Python project structure.
14
- - Virtual environments are used to manage dependencies.
15
- - Always run python and pip from the virtual environment directly (`./venv/bin/python` and `./venv/bin/pip`)
16
- - The project runs on Python 3.13 or higher.
17
- - The project must always use the `python-dotenv` package to load environment variables from a `.env` file.
18
- - All dependencies are listed in the `requirements.txt` file.
19
- - The project uses FastAPI and Uvicorn for the web server. Upon running the project, it will be accessible at `http://localhost:3000` and it'll keep running as long as the process is active. For easier development, pipe the output to a log file.
20
- - The project must always try to stay stateless and handle requests with in-memory processing whenever possible.
21
- - The project must always fail gracefully and return appropriate error messages.
13
+ ```bash
14
+ fw uv add <dep> # Add a dependency
15
+ fw uv add --dev <dep> # Add a dev dependency
16
+ fw uv sync # Install/sync all dependencies
17
+ fw uv run <command> # Run a command in the project environment
18
+ ```
22
19
 
23
- ## Common Command Patterns
20
+ ## Stack
24
21
 
25
- ### Run Project
22
+ - Python >=3.13 with FastAPI + Uvicorn
23
+ - `.env` loaded via `python-dotenv`
24
+ - Stateless request handling; fail gracefully with appropriate error responses
26
25
 
27
- ```bash
28
- # Update dependencies
29
- pip install -r ./src/requirements.txt
26
+ ## Project Structure
30
27
 
31
- # Add new package
32
- pip install package/name
28
+ - Entry point: `src/main.py`
29
+ - Routes: `src/routes/`
30
+ - Tests: `tests/` (run with `fw uv run pytest`)
31
+ - Dev dependencies in `[dependency-groups.dev]` of `pyproject.toml`
33
32
 
34
- # Run project
35
- python ./src/main.py
36
- ```
33
+ ## Tests
34
+
35
+ You can run tests via
36
+
37
+ `fw test`
38
+
39
+ or an individual test file with
40
+
41
+ `fw uv run pytest -o log_cli=true tests/integration/test_middleware.py`
37
42
 
38
- ## Project Structure Context
43
+ or a single test within that file with
39
44
 
40
- - **Main application**: The main entry point is `./src/main.py`
41
- - **Routes**: API routes are defined in `./src/routes/*.py`
42
- - **Connectors**: LLM Connectors are defined in `./src/connectors/*.py`
45
+ `fw uv run pytest -o log_cli=true tests/integration/test_middleware.py -k 'test_001'`
@@ -9,3 +9,7 @@ Backends are typically named with the pattern \*-api.
9
9
  Frontends are typically named with the pattern \*-fe. or with no suffix.
10
10
 
11
11
  Ensure you cd into the correct directory before running any terminal commands.
12
+
13
+ ## Commits
14
+
15
+ When a feature is complete always suggest the conventional commit that summarizes the changes.
@@ -0,0 +1,36 @@
1
+ {
2
+ "attributes": {
3
+ "src": "_Build",
4
+ "targets": {
5
+ "aws-s3": {
6
+ "content": [{ "aws-s3": "fishawack", "location": "core-test-suite-content" }]
7
+ },
8
+ "aws-s3-nested": {
9
+ "content": [{ "aws-s3": "fishawack", "location": "core-test-suite-content/nested" }]
10
+ },
11
+ "aws-s3-key": {
12
+ "content": [{ "aws-s3": "fishawack", "location": "core-test-suite-content", "key": "custom-key" }]
13
+ },
14
+ "aws-s3-sync": {
15
+ "content": [{ "aws-s3": "fishawack", "location": "core-test-suite-content", "key": "custom-key", "sync": true }]
16
+ },
17
+ "contentful": {
18
+ "content": [{ "url": "https://cdn.contentful.com/", "api": "spaces/hnifelsg7djt/environments/master/entries?access_token=-_qKPGeSi_ksTsXJd9o9KZdl-jdxZTDd_E9gjLS4QHY&content_type=", "type": "contentful", "bundle": true, "find": "\/\/images.ctfassets.net\/(.*?)\/(.*?)\/(.*?)\/", "endpoints": ["layout", "layoutCopy", "lessonImage"] }]
19
+ },
20
+ "empty": { "content": [] },
21
+ "handover": {},
22
+ "ftp-legacy": {
23
+ "content": [{ "ftp": "ftp-fishawack.egnyte.com", "location": "Shared/FW/Knutsford/Digital/Auto-Content/test-shared/" }]
24
+ },
25
+ "single": {
26
+ "content": [{ "aws-s3": "fishawack", "location": "core-test-suite-content" }]
27
+ },
28
+ "double": {
29
+ "content": [
30
+ { "aws-s3": "fishawack", "location": "core-test-suite-content" },
31
+ { "aws-s3": "fishawack", "location": "core-test-suite-content", "key": "custom-key" }
32
+ ]
33
+ }
34
+ }
35
+ }
36
+ }