Skip to content

Commit fdb4ebe

Browse files
committed
Simplify environment variable handling
1 parent 15f1c5e commit fdb4ebe

6 files changed

Lines changed: 54 additions & 67 deletions

File tree

.env.sample

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
export TEAM_ID=$(cs list workspaces | grep $WORKSPACE_ID | awk '{print $2}')
21
export UV_PYTHON_INSTALL_DIR=/home/user/app/.codesphere-internal/.uv-python-install
32
export UV_PYTHON_BIN_DIR=/home/user/app/.codesphere-internal/.uv-python-bin
43
export UV_CACHE_DIR=/home/user/app/.codesphere-internal/.uv

README.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
# python-demo test
22

3-
before running any stage you will need to set up a 'CS_TOKEN' env var containing an Codesphere API key.
4-
53
# open backend api docs
64

75
`/api/docs` or `/api/redoc`

ci.Qa.yml

Lines changed: 15 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,33 @@
11
schemaVersion: v0.2
22
prepare:
33
steps:
4-
- name: install Codesphere cli tool
5-
command: mkdir -p $HOME/.local/bin && wget -qO-
6-
'https://api.github.com/repos/codesphere-cloud/cs-go/releases/latest' |
7-
grep linux_amd64 | grep browser_download_url | sed s/.*https/https/ |
8-
sed s/\".*$// | xargs wget -O $HOME/.local/bin/cs && chmod +x
9-
$HOME/.local/bin/cs
104
- name: install uv standalone version
115
command: curl -LsSf https://astral.sh/uv/install.sh | env
126
UV_INSTALL_DIR="$HOME/app" sh && chmod +x $HOME/app/uv
13-
- command: cp -n .env.sample .env
14-
- name: "set ev vars "
15-
command: . .env && cs set-env -w $WORKSPACE_ID -t $TEAM_ID --env-var
16-
UV_PYTHON_INSTALL_DIR=$PWD/.codesphere-internal/.uv-python-install
17-
--env-var UV_PYTHON_BIN_DIR=$PWD/.codesphere-internal/.uv-python-bin
18-
--env-var UV_CACHE_DIR=$PWD/.codesphere-internal/.uv --env-var
19-
UV_PYTHON_CACHE_DIR=$PWD/.codesphere-internal/.uv-python
207
- name: install frontend environment
21-
command: . ./env && cd frontend && { [ ! -d ".venv" ] && uv venv; uv sync
22-
--no-dev; }
8+
command: cd frontend && { [ ! -d ".venv" ] && UV_PYTHON_INSTALL_DIR=/home/user/app/.codesphere-internal/.uv-python-install UV_PYTHON_BIN_DIR=/home/user/app/.codesphere-internal/.uv-python-bin UV_CACHE_DIR=/home/user/app/.codesphere-internal/.uv UV_PYTHON_CACHE_DIR=/home/user/app/.codesphere-internal/.uv-python uv venv; UV_PYTHON_INSTALL_DIR=/home/user/app/.codesphere-internal/.uv-python-install UV_PYTHON_BIN_DIR=/home/user/app/.codesphere-internal/.uv-python-bin UV_CACHE_DIR=/home/user/app/.codesphere-internal/.uv UV_PYTHON_CACHE_DIR=/home/user/app/.codesphere-internal/.uv-python uv sync --no-dev; }
239
- name: install backend environment
24-
command: . ./env && cd backend && { [ ! -d ".venv" ] && uv venv; uv sync
25-
--no-dev; }
10+
command: cd backend && { [ ! -d ".venv" ] && UV_PYTHON_INSTALL_DIR=/home/user/app/.codesphere-internal/.uv-python-install UV_PYTHON_BIN_DIR=/home/user/app/.codesphere-internal/.uv-python-bin UV_CACHE_DIR=/home/user/app/.codesphere-internal/.uv UV_PYTHON_CACHE_DIR=/home/user/app/.codesphere-internal/.uv-python uv venv; UV_PYTHON_INSTALL_DIR=/home/user/app/.codesphere-internal/.uv-python-install UV_PYTHON_BIN_DIR=/home/user/app/.codesphere-internal/.uv-python-bin UV_CACHE_DIR=/home/user/app/.codesphere-internal/.uv UV_PYTHON_CACHE_DIR=/home/user/app/.codesphere-internal/.uv-python uv sync --no-dev; }
2611
test:
2712
steps: []
2813
run:
2914
frontend:
3015
steps:
3116
- name: start frontend application
32-
command: ". ./env && cd frontend && uv run streamlit run main.py
33-
--server.headless true --server.address 0.0.0.0 --server.port 3000
34-
--browser.gatherUsageStats false --logger.level info "
17+
command: "cd frontend && uv run streamlit run main.py --server.headless true
18+
--server.address 0.0.0.0 --server.port 3000 --browser.gatherUsageStats
19+
false --logger.level info "
3520
plan: 20
3621
replicas: 1
3722
isPublic: true
3823
network:
3924
path: /
4025
stripPath: false
26+
env:
27+
UV_PYTHON_INSTALL_DIR: /home/user/app/.codesphere-internal/.uv-python-install
28+
UV_PYTHON_BIN_DIR: /home/user/app/.codesphere-internal/.uv-python-bin
29+
UV_CACHE_DIR: /home/user/app/.codesphere-internal/.uv
30+
UV_PYTHON_CACHE_DIR: /home/user/app/.codesphere-internal/.uv-python
4131
backend:
4232
steps:
4333
- name: start backend application
@@ -46,6 +36,11 @@ run:
4636
plan: 20
4737
replicas: 1
4838
isPublic: false
39+
env:
40+
UV_PYTHON_INSTALL_DIR: /home/user/app/.codesphere-internal/.uv-python-install
41+
UV_PYTHON_BIN_DIR: /home/user/app/.codesphere-internal/.uv-python-bin
42+
UV_CACHE_DIR: /home/user/app/.codesphere-internal/.uv
43+
UV_PYTHON_CACHE_DIR: /home/user/app/.codesphere-internal/.uv-python
4944
api-docs:
5045
steps:
5146
- name: deploy docs

ci.dev.yml

Lines changed: 12 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,13 @@
11
schemaVersion: v0.2
22
prepare:
33
steps:
4-
- name: install Codesphere cli tool
5-
command: mkdir -p $HOME/.local/bin && wget -qO-
6-
'https://api.github.com/repos/codesphere-cloud/cs-go/releases/latest' |
7-
grep linux_amd64 | grep browser_download_url | sed s/.*https/https/ |
8-
sed s/\".*$// | xargs wget -O $HOME/.local/bin/cs && chmod +x
9-
$HOME/.local/bin/cs
104
- name: install uv standalone version
115
command: curl -LsSf https://astral.sh/uv/install.sh | env
126
UV_INSTALL_DIR="$HOME/app" sh && chmod +x $HOME/app/uv
13-
- name: copy template .env file
14-
command: cp -n .env.sample .env
15-
- name: "set ev vars "
16-
command: . .env && cs set-env -w $WORKSPACE_ID -t $TEAM_ID --env-var
17-
UV_PYTHON_INSTALL_DIR=$PWD/.codesphere-internal/.uv-python-install
18-
--env-var UV_PYTHON_BIN_DIR=$PWD/.codesphere-internal/.uv-python-bin
19-
--env-var UV_CACHE_DIR=$PWD/.codesphere-internal/.uv --env-var
20-
UV_PYTHON_CACHE_DIR=$PWD/.codesphere-internal/.uv-python
217
- name: install frontend environment
22-
command: . ./env && cd frontend && { [ ! -d ".venv" ] && uv venv; uv sync; }
8+
command: cd frontend && { [ ! -d ".venv" ] && UV_PYTHON_INSTALL_DIR=/home/user/app/.codesphere-internal/.uv-python-install UV_PYTHON_BIN_DIR=/home/user/app/.codesphere-internal/.uv-python-bin UV_CACHE_DIR=/home/user/app/.codesphere-internal/.uv UV_PYTHON_CACHE_DIR=/home/user/app/.codesphere-internal/.uv-python uv venv; UV_PYTHON_INSTALL_DIR=/home/user/app/.codesphere-internal/.uv-python-install UV_PYTHON_BIN_DIR=/home/user/app/.codesphere-internal/.uv-python-bin UV_CACHE_DIR=/home/user/app/.codesphere-internal/.uv UV_PYTHON_CACHE_DIR=/home/user/app/.codesphere-internal/.uv-python uv sync; }
239
- name: install backend environment
24-
command: . ./env && cd backend && { [ ! -d ".venv" ] && uv venv; uv sync; }
10+
command: cd backend && { [ ! -d ".venv" ] && UV_PYTHON_INSTALL_DIR=/home/user/app/.codesphere-internal/.uv-python-install UV_PYTHON_BIN_DIR=/home/user/app/.codesphere-internal/.uv-python-bin UV_CACHE_DIR=/home/user/app/.codesphere-internal/.uv UV_PYTHON_CACHE_DIR=/home/user/app/.codesphere-internal/.uv-python uv venv; UV_PYTHON_INSTALL_DIR=/home/user/app/.codesphere-internal/.uv-python-install UV_PYTHON_BIN_DIR=/home/user/app/.codesphere-internal/.uv-python-bin UV_CACHE_DIR=/home/user/app/.codesphere-internal/.uv UV_PYTHON_CACHE_DIR=/home/user/app/.codesphere-internal/.uv-python uv sync; }
2511
test:
2612
steps:
2713
- name: test frontend
@@ -48,6 +34,11 @@ run:
4834
network:
4935
path: /
5036
stripPath: false
37+
env:
38+
UV_PYTHON_INSTALL_DIR: /home/user/app/.codesphere-internal/.uv-python-install
39+
UV_PYTHON_BIN_DIR: /home/user/app/.codesphere-internal/.uv-python-bin
40+
UV_CACHE_DIR: /home/user/app/.codesphere-internal/.uv
41+
UV_PYTHON_CACHE_DIR: /home/user/app/.codesphere-internal/.uv-python
5142
backend:
5243
steps:
5344
- name: start backend application
@@ -56,6 +47,11 @@ run:
5647
plan: 20
5748
replicas: 1
5849
isPublic: false
50+
env:
51+
UV_PYTHON_INSTALL_DIR: /home/user/app/.codesphere-internal/.uv-python-install
52+
UV_PYTHON_BIN_DIR: /home/user/app/.codesphere-internal/.uv-python-bin
53+
UV_CACHE_DIR: /home/user/app/.codesphere-internal/.uv
54+
UV_PYTHON_CACHE_DIR: /home/user/app/.codesphere-internal/.uv-python
5955
api-docs:
6056
steps:
6157
- name: deploy docs

ci.prod.yml

Lines changed: 12 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,12 @@
11
schemaVersion: v0.2
22
prepare:
33
steps:
4-
- name: install Codesphere cli tool
5-
command: mkdir -p $HOME/.local/bin && wget -qO-
6-
'https://api.github.com/repos/codesphere-cloud/cs-go/releases/latest' |
7-
grep linux_amd64 | grep browser_download_url | sed s/.*https/https/ |
8-
sed s/\".*$// | xargs wget -O $HOME/.local/bin/cs && chmod +x
9-
$HOME/.local/bin/cs
104
- name: install uv standalone version
115
command: nix-env -iA nixpkgs.uv
12-
- name: "set ev vars "
13-
command: . .env && cs set-env -w $WORKSPACE_ID -t $TEAM_ID --env-var
14-
UV_PYTHON_INSTALL_DIR=$PWD/.codesphere-internal/.uv-python-install
15-
--env-var UV_PYTHON_BIN_DIR=$PWD/.codesphere-internal/.uv-python-bin
16-
--env-var UV_CACHE_DIR=$PWD/.codesphere-internal/.uv --env-var
17-
UV_PYTHON_CACHE_DIR=$PWD/.codesphere-internal/.uv-python
186
- name: install frontend environment
19-
command: cd frontend && { [ ! -d ".venv" ] && uv venv; uv sync --no-dev; }
7+
command: cd frontend && { [ ! -d ".venv" ] && UV_PYTHON_INSTALL_DIR=/home/user/app/.codesphere-internal/.uv-python-install UV_PYTHON_BIN_DIR=/home/user/app/.codesphere-internal/.uv-python-bin UV_CACHE_DIR=/home/user/app/.codesphere-internal/.uv UV_PYTHON_CACHE_DIR=/home/user/app/.codesphere-internal/.uv-python uv venv; UV_PYTHON_INSTALL_DIR=/home/user/app/.codesphere-internal/.uv-python-install UV_PYTHON_BIN_DIR=/home/user/app/.codesphere-internal/.uv-python-bin UV_CACHE_DIR=/home/user/app/.codesphere-internal/.uv UV_PYTHON_CACHE_DIR=/home/user/app/.codesphere-internal/.uv-python uv sync --no-dev; }
208
- name: install backend environment
21-
command: cd backend && { [ ! -d ".venv" ] && uv venv; uv sync --no-dev; }
9+
command: cd backend && { [ ! -d ".venv" ] && UV_PYTHON_INSTALL_DIR=/home/user/app/.codesphere-internal/.uv-python-install UV_PYTHON_BIN_DIR=/home/user/app/.codesphere-internal/.uv-python-bin UV_CACHE_DIR=/home/user/app/.codesphere-internal/.uv UV_PYTHON_CACHE_DIR=/home/user/app/.codesphere-internal/.uv-python uv venv; UV_PYTHON_INSTALL_DIR=/home/user/app/.codesphere-internal/.uv-python-install UV_PYTHON_BIN_DIR=/home/user/app/.codesphere-internal/.uv-python-bin UV_CACHE_DIR=/home/user/app/.codesphere-internal/.uv UV_PYTHON_CACHE_DIR=/home/user/app/.codesphere-internal/.uv-python uv sync --no-dev; }
2210
test:
2311
steps: []
2412
run:
@@ -34,6 +22,11 @@ run:
3422
network:
3523
path: /
3624
stripPath: false
25+
env:
26+
UV_PYTHON_INSTALL_DIR: /home/user/app/.codesphere-internal/.uv-python-install
27+
UV_PYTHON_BIN_DIR: /home/user/app/.codesphere-internal/.uv-python-bin
28+
UV_CACHE_DIR: /home/user/app/.codesphere-internal/.uv
29+
UV_PYTHON_CACHE_DIR: /home/user/app/.codesphere-internal/.uv-python
3730
backend:
3831
steps:
3932
- name: start backend application
@@ -42,6 +35,11 @@ run:
4235
plan: 8
4336
replicas: 1
4437
isPublic: false
38+
env:
39+
UV_PYTHON_INSTALL_DIR: /home/user/app/.codesphere-internal/.uv-python-install
40+
UV_PYTHON_BIN_DIR: /home/user/app/.codesphere-internal/.uv-python-bin
41+
UV_CACHE_DIR: /home/user/app/.codesphere-internal/.uv
42+
UV_PYTHON_CACHE_DIR: /home/user/app/.codesphere-internal/.uv-python
4543
api-docs:
4644
steps:
4745
- name: deploy docs

ci.yml

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,33 @@
11
schemaVersion: v0.2
22
prepare:
33
steps:
4-
- name: install Codesphere cli tool
5-
command: mkdir -p $HOME/.local/bin && wget -qO-
6-
'https://api.github.com/repos/codesphere-cloud/cs-go/releases/latest' |
7-
grep linux_amd64 | grep browser_download_url | sed s/.*https/https/ |
8-
sed s/\".*$// | xargs wget -O $HOME/.local/bin/cs && chmod +x
9-
$HOME/.local/bin/cs
104
- name: install uv standalone version
115
command: curl -LsSf https://astral.sh/uv/install.sh | env
126
UV_INSTALL_DIR="$HOME/app" sh && chmod +x $HOME/app/uv
13-
- command: cp -n .env.sample .env
147
- name: install frontend environment
15-
command: . ./env && cd frontend && { [ ! -d ".venv" ] && uv venv; uv sync
16-
--no-dev; }
8+
command: cd frontend && { [ ! -d ".venv" ] && UV_PYTHON_INSTALL_DIR=/home/user/app/.codesphere-internal/.uv-python-install UV_PYTHON_BIN_DIR=/home/user/app/.codesphere-internal/.uv-python-bin UV_CACHE_DIR=/home/user/app/.codesphere-internal/.uv UV_PYTHON_CACHE_DIR=/home/user/app/.codesphere-internal/.uv-python uv venv; UV_PYTHON_INSTALL_DIR=/home/user/app/.codesphere-internal/.uv-python-install UV_PYTHON_BIN_DIR=/home/user/app/.codesphere-internal/.uv-python-bin UV_CACHE_DIR=/home/user/app/.codesphere-internal/.uv UV_PYTHON_CACHE_DIR=/home/user/app/.codesphere-internal/.uv-python uv sync --no-dev; }
179
- name: install backend environment
18-
command: . ./env && cd backend && { [ ! -d ".venv" ] && uv venv; uv sync
19-
--no-dev; }
10+
command: cd backend && { [ ! -d ".venv" ] && UV_PYTHON_INSTALL_DIR=/home/user/app/.codesphere-internal/.uv-python-install UV_PYTHON_BIN_DIR=/home/user/app/.codesphere-internal/.uv-python-bin UV_CACHE_DIR=/home/user/app/.codesphere-internal/.uv UV_PYTHON_CACHE_DIR=/home/user/app/.codesphere-internal/.uv-python uv venv; UV_PYTHON_INSTALL_DIR=/home/user/app/.codesphere-internal/.uv-python-install UV_PYTHON_BIN_DIR=/home/user/app/.codesphere-internal/.uv-python-bin UV_CACHE_DIR=/home/user/app/.codesphere-internal/.uv UV_PYTHON_CACHE_DIR=/home/user/app/.codesphere-internal/.uv-python uv sync --no-dev; }
2011
test:
2112
steps: []
2213
run:
2314
frontend:
2415
steps:
2516
- name: start frontend application
26-
command: ". ./env && cd frontend && uv run streamlit run main.py
27-
--server.headless true --server.address 0.0.0.0 --server.port 3000
28-
--browser.gatherUsageStats false --logger.level info "
17+
command: "cd frontend && uv run streamlit run main.py --server.headless true
18+
--server.address 0.0.0.0 --server.port 3000 --browser.gatherUsageStats
19+
false --logger.level info "
2920
plan: 8
3021
replicas: 1
3122
isPublic: true
3223
network:
3324
path: /
3425
stripPath: false
26+
env:
27+
UV_PYTHON_INSTALL_DIR: /home/user/app/.codesphere-internal/.uv-python-install
28+
UV_PYTHON_BIN_DIR: /home/user/app/.codesphere-internal/.uv-python-bin
29+
UV_CACHE_DIR: /home/user/app/.codesphere-internal/.uv
30+
UV_PYTHON_CACHE_DIR: /home/user/app/.codesphere-internal/.uv-python
3531
backend:
3632
steps:
3733
- name: start backend application
@@ -40,6 +36,11 @@ run:
4036
plan: 8
4137
replicas: 1
4238
isPublic: false
39+
env:
40+
UV_PYTHON_INSTALL_DIR: /home/user/app/.codesphere-internal/.uv-python-install
41+
UV_PYTHON_BIN_DIR: /home/user/app/.codesphere-internal/.uv-python-bin
42+
UV_CACHE_DIR: /home/user/app/.codesphere-internal/.uv
43+
UV_PYTHON_CACHE_DIR: /home/user/app/.codesphere-internal/.uv-python
4344
api-docs:
4445
steps:
4546
- name: deploy docs

0 commit comments

Comments
 (0)