Skip to content

Commit 446d196

Browse files
author
thepetk
committed
Fetch resources from env vars
1 parent fee61a9 commit 446d196

File tree

2 files changed

+27
-45
lines changed

2 files changed

+27
-45
lines changed

gitlab2sentry/exceptions.py

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,3 @@
1-
class InvalidYamlConfigError(Exception):
2-
pass
3-
4-
51
class SentryProjectCreationFailed(Exception):
62
pass
73

gitlab2sentry/resources.py

Lines changed: 27 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,6 @@
33
from collections import namedtuple
44
from typing import List, Tuple
55

6-
import yaml
7-
8-
from gitlab2sentry.exceptions import InvalidYamlConfigError
9-
10-
with open("g2s.yaml", "r") as config_file:
11-
try:
12-
config = yaml.safe_load(config_file)
13-
except yaml.YAMLError as exc:
14-
raise InvalidYamlConfigError(f"Invalid Config File: {str(exc)}")
15-
166
try:
177
ENV = os.getenv("ENV", "production")
188
TEST_SENTRY_URL = "http://sentry.test.com"
@@ -22,44 +12,40 @@
2212
TEST_GITLAB_TOKEN = "test-token"
2313

2414
# Sentry configuration
25-
SENTRY_URL = os.getenv("SENTRY_URL") if ENV != "test" else TEST_SENTRY_URL
26-
SENTRY_TOKEN = os.getenv("SENTRY_TOKEN") if ENV != "test" else TEST_SENTRY_TOKEN
27-
SENTRY_DSN = os.getenv("SENTRY_DSN") if ENV != "test" else TEST_SENTRY_DSN
15+
SENTRY_URL = TEST_SENTRY_URL if ENV == "test" else os.environ["SENTRY_URL"]
16+
SENTRY_TOKEN = TEST_SENTRY_TOKEN if ENV == "test" else os.environ["SENTRY_TOKEN"]
17+
SENTRY_DSN = TEST_SENTRY_DSN if ENV == "test" else os.environ["SENTRY_DSN"]
2818
SENTRY_ENV = os.getenv("SENTRY_ENV", "production")
29-
SENTRY_ORG_SLUG = config["sentry"]["slug"]
19+
SENTRY_ORG_SLUG = os.environ["SENTRY_ORG_SLUG"]
3020

3121
# DSN MR configuration.
32-
DSN_MR_CONTENT = config["gitlab"]["dsn_mr"]["content"]
33-
DSN_BRANCH_NAME = config["gitlab"]["dsn_mr"]["branch_name"]
34-
DSN_MR_TITLE = config["gitlab"]["dsn_mr"]["title"]
35-
DSN_MR_DESCRIPTION = config["gitlab"]["dsn_mr"]["description"]
22+
DSN_MR_CONTENT = os.environ["GITLAB_DSN_MR_CONTENT"]
23+
DSN_BRANCH_NAME = os.environ["GITLAB_DSN_MR_BRANCH_NAME"]
24+
DSN_MR_TITLE = os.environ["GITLAB_DSN_MR_TITLE"]
25+
DSN_MR_DESCRIPTION = os.environ["GITLAB_DSN_MR_DESCRIPTION"]
3626

3727
# Sentryclirc MR configuration.
38-
SENTRYCLIRC_MR_CONTENT = config["gitlab"]["sentryclirc_mr"]["content"]
39-
SENTRYCLIRC_BRANCH_NAME = config["gitlab"]["sentryclirc_mr"]["branch_name"]
40-
SENTRYCLIRC_MR_TITLE = config["gitlab"]["sentryclirc_mr"]["title"]
41-
SENTRYCLIRC_FILEPATH = config["gitlab"]["sentryclirc_mr"]["filepath"]
42-
SENTRYCLIRC_COM_MSG = config["gitlab"]["sentryclirc_mr"]["commit_message"]
43-
SENTRYCLIRC_MR_DESCRIPTION = config["gitlab"]["sentryclirc_mr"]["description"]
28+
SENTRYCLIRC_MR_CONTENT = os.environ["GITLAB_SENTRYCLIRC_MR_CONTENT"]
29+
SENTRYCLIRC_BRANCH_NAME = os.environ["GITLAB_SENTRYCLIRC_MR_BRANCH_NAME"]
30+
SENTRYCLIRC_MR_TITLE = os.environ["GITLAB_SENTRYCLIRC_MR_TITLE"]
31+
SENTRYCLIRC_FILEPATH = os.environ["GITLAB_SENTRYCLIRC_MR_FILEPATH"]
32+
SENTRYCLIRC_COM_MSG = os.environ["GITLAB_SENTRYCLIRC_MR_COMMIT_MSG"]
33+
SENTRYCLIRC_MR_DESCRIPTION = os.environ["GITLAB_SENTRYCLIRC_MR_DESCRIPTION"]
4434

4535
# Gitlab Configuration.
46-
GITLAB_URL = os.getenv("GITLAB_URL") if ENV != "test" else TEST_GITLAB_URL
47-
GITLAB_TOKEN = os.getenv("GITLAB_TOKEN") if ENV != "test" else TEST_GITLAB_TOKEN
48-
GITLAB_GRAPHQL_SUFFIX = config["gitlab"]["config"]["graphql_suffix"]
49-
GITLAB_GRAPHQL_TIMEOUT = int(config["gitlab"]["config"]["graphql_aiohttp_timeout"])
50-
GITLAB_GRAPHQL_PAGE_LENGTH = int(config["gitlab"]["config"]["graphql_page_length"])
51-
GITLAB_GROUP_IDENTIFIER = config["gitlab"]["config"].get("group_identifier", "")
52-
GITLAB_AUTHOR_EMAIL = config["gitlab"]["config"]["author"]["email"]
53-
GITLAB_AUTHOR_NAME = config["gitlab"]["config"]["author"]["name"]
54-
GITLAB_PROJECT_CREATION_LIMIT = int(
55-
config["gitlab"]["config"].get("creation_days_limit", 0)
56-
)
57-
GITLAB_RMV_SRC_BRANCH = config["gitlab"]["config"]["remove_source"]
58-
GITLAB_MENTIONS_LIST = config["gitlab"]["config"].get("mentions")
59-
GITLAB_MENTIONS_ACCESS_LEVEL = int(
60-
config["gitlab"]["config"].get("mentions_access_level")
61-
)
62-
GITLAB_MR_KEYWORD = config["gitlab"]["config"]["keyword"]
36+
GITLAB_URL = TEST_GITLAB_URL if ENV == "test" else os.environ["GITLAB_URL"]
37+
GITLAB_TOKEN = TEST_GITLAB_TOKEN if ENV == "test" else os.environ["GITLAB_TOKEN"]
38+
GITLAB_GRAPHQL_SUFFIX = os.environ["GITLAB_GRAPHQL_SUFFIX"]
39+
GITLAB_GRAPHQL_TIMEOUT = int(os.environ["GITLAB_AIOHTTP_TIMEOUT"])
40+
GITLAB_GRAPHQL_PAGE_LENGTH = int(os.environ["GITLAB_GRAPHQL_PAGE_LENGTH"])
41+
GITLAB_GROUP_IDENTIFIER = os.getenv("GITLAB_GROUP_IDENTIFIER", "")
42+
GITLAB_AUTHOR_EMAIL = os.environ["GITLAB_AUTHOR_EMAIL"]
43+
GITLAB_AUTHOR_NAME = os.environ["GITLAB_AUTHOR_NAME"]
44+
GITLAB_PROJECT_CREATION_LIMIT = int(os.getenv("GITLAB_CREATION_DAYS_LIMIT", 0))
45+
GITLAB_RMV_SRC_BRANCH = os.environ["GITLAB_REMOVE_SOURCE"]
46+
GITLAB_MENTIONS_LIST = os.getenv("GITLAB_MENTIONS")
47+
GITLAB_MENTIONS_ACCESS_LEVEL = int(os.getenv("GITLAB_MENTIONS_ACCESS_LEVEL", 40))
48+
GITLAB_MR_KEYWORD = os.environ["GITLAB_MR_KEYWORD"]
6349
except TypeError as type_error:
6450
logging.error(
6551
"<Gitlab2Sentry>: g2s.yaml not configured properly - {}".format(str(type_error))

0 commit comments

Comments
 (0)