spaces-ci commited on
Commit
f132f16
·
verified ·
1 Parent(s): 73e2677

update: repo/variables-and-secrets/commit-1

Browse files
Files changed (3) hide show
  1. Dockerfile +15 -0
  2. app.py +38 -0
  3. requirements.txt +2 -0
Dockerfile ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ FROM python:3.9
3
+ RUN pip install -U pip
4
+ WORKDIR /app
5
+ COPY . .
6
+ RUN pip install -r requirements.txt
7
+
8
+ ARG AUTHOR_NAME
9
+ ARG REPO_NAME
10
+ RUN echo $AUTHOR_NAME > var1.build
11
+ RUN echo $REPO_NAME > var2.build
12
+ RUN --mount=type=secret,id=SECRET,mode=0444,required=true echo $(cat /run/secrets/SECRET) > secret.build
13
+ RUN --mount=type=secret,id=SECRET2,mode=0444,required=true echo $(cat /run/secrets/SECRET2) > secret2.build
14
+
15
+ ENTRYPOINT ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]
app.py ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import os
2
+ import fastapi
3
+
4
+
5
+ app = fastapi.FastAPI()
6
+
7
+
8
+ @app.get("/")
9
+ async def root():
10
+ check_env()
11
+ return {"message": "Hello World"}
12
+
13
+
14
+ def check_env():
15
+ var1_env = os.getenv("AUTHOR_NAME")
16
+ var2_env = os.getenv("REPO_NAME")
17
+ secret_env = os.getenv("SECRET")
18
+ secret_env2 = os.getenv("SECRET2")
19
+
20
+ with open("var1.build") as f1:
21
+ var1_fs = f1.read().rstrip("\n")
22
+ with open("var2.build") as f2:
23
+ var2_fs = f2.read().rstrip("\n")
24
+ with open("secret.build") as fs:
25
+ secret_fs = fs.read().rstrip("\n")
26
+ with open("secret2.build") as fs:
27
+ secret_fs2 = fs.read().rstrip("\n")
28
+
29
+ print(f"'{var1_env}', '{var1_fs}'")
30
+ print(f"'{var2_env}', '{var2_fs}'")
31
+ print(f"'{secret_env}', '{secret_fs}'")
32
+ print(f"'{secret_env2}', '{secret_fs2}'")
33
+
34
+ if (secret_env != secret_fs) or (secret_env2 != secret_fs2) or (var1_env != var1_fs) or (var2_env != var2_fs):
35
+ raise Exception("Environment variables and build-time values mismatch!")
36
+
37
+ if (secret_env != "s3cr3t") or (secret_env2 != "s3cr3t2") or (var1_env != "hf-user") or (var2_env != "facebook/mms-tts"):
38
+ raise Exception("Environment have unexpected values!")
requirements.txt ADDED
@@ -0,0 +1,2 @@
 
 
 
1
+ fastapi==0.99
2
+ uvicorn==0.22