Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Utilize sys.arg within code.py #3

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 6 additions & 2 deletions code.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
from jinja2 import Environment, FileSystemLoader
import yaml

import sys
file_loader = FileSystemLoader("templates")


Expand Down Expand Up @@ -118,8 +118,12 @@ def helper_parse_values(self, key, value, table):
# template = env.get_template("ecomm_template.py.jinja2")
template.globals['Table'] = Table()

yaml_file = "yaml/job_listings.yaml"
if sys.argv[1]:
yaml_file = f"yaml/{sys.argv[1]}.yaml"
print(yaml_file)
# read yaml file
with open("yaml/job_listings.yaml", "r") as val:
with open(yaml_file, "r") as val:
values = yaml.safe_load(val)
output = template.render(tables=values)
# write python file
Expand Down
218 changes: 118 additions & 100 deletions data/employees.csv

Large diffs are not rendered by default.

194 changes: 97 additions & 97 deletions data/jobs.csv
Original file line number Diff line number Diff line change
@@ -1,101 +1,101 @@
id,level,org,title
1,1,Sales,SE
2,4,Customer Success,CSM
3,2,Sales,AE
4,2,Engineering,SWE
5,3,Product,UI
1,2,Product,UX
2,3,Customer Success,CSM
3,3,Customer Success,CSE
4,3,Marketing,Marketing Analyst
5,3,Sales,SE
6,1,Engineering,SWE
7,3,Product,UX
8,3,Sales,SE
9,1,Marketing,Marketing Analyst
10,3,Product,UX
11,3,Product,UX
12,2,Engineering,SWE
13,3,Marketing,Marketing Manager
14,1,Product,PM
15,3,Engineering,SWE
16,4,Product,PM
17,3,Product,UX
18,2,Sales,FSR
19,3,Sales,SE
20,2,Marketing,Marketing Manager
21,3,Marketing,Marketing Analyst
22,2,Engineering,Data Eng
23,2,Customer Success,CSM
24,3,Engineering,Data Eng
25,3,Sales,SE
26,2,Sales,AE
27,4,Sales,AE
28,4,Product,PM
29,3,Engineering,Data Eng
30,3,Engineering,SWE
31,3,Product,PM
32,2,Customer Success,CSM
33,2,Product,UI
34,4,Sales,AE
35,1,Engineering,SWE
36,3,Engineering,SWE
37,2,Sales,SE
38,3,Engineering,Data Eng
39,3,Customer Success,CSM
40,4,Customer Success,TSM
41,4,Product,UI
42,4,Customer Success,CSM
43,2,Product,PM
44,1,Sales,AE
45,4,Marketing,Marketing Manager
46,3,Engineering,Data Eng
47,3,Product,UX
48,4,Sales,FSR
49,2,Sales,SE
50,2,Customer Success,CSM
51,3,Customer Success,CSM
52,2,Product,PM
53,4,Product,UI
54,3,Customer Success,TSM
55,4,Engineering,SWE
56,2,Marketing,Marketing Manager
57,2,Marketing,Marketing Manager
58,4,Customer Success,CSE
59,2,Customer Success,CSM
60,2,Customer Success,CSE
61,2,Marketing,Marketing Manager
62,4,Engineering,SWE
63,3,Engineering,Data Eng
64,4,Engineering,Data Eng
7,3,Sales,AE
8,2,Sales,AE
9,2,Engineering,Data Eng
10,3,Customer Success,CSM
11,1,Marketing,Marketing Analyst
12,1,Engineering,Data Eng
13,2,Product,PM
14,1,Engineering,Data Eng
15,1,Product,PM
16,2,Sales,AE
17,1,Engineering,SWE
18,3,Marketing,Marketing Analyst
19,1,Engineering,SWE
20,2,Sales,FSR
21,4,Marketing,Marketing Analyst
22,2,Product,PM
23,4,Sales,AE
24,3,Product,PM
25,3,Customer Success,CSE
26,3,Product,PM
27,4,Engineering,SWE
28,3,Engineering,Data Eng
29,4,Customer Success,CSM
30,4,Customer Success,CSM
31,3,Product,UX
32,4,Sales,FSR
33,4,Sales,SE
34,2,Engineering,SWE
35,3,Product,UX
36,4,Product,UX
37,1,Customer Success,CSE
38,2,Engineering,SWE
39,2,Sales,AE
40,4,Sales,SE
41,2,Marketing,Marketing Manager
42,4,Engineering,SWE
43,3,Engineering,Data Eng
44,4,Customer Success,CSM
45,3,Product,PM
46,3,Customer Success,TSM
47,2,Engineering,SWE
48,4,Marketing,Marketing Analyst
49,4,Engineering,SWE
50,4,Marketing,Marketing Analyst
51,1,Customer Success,CSM
52,1,Customer Success,CSE
53,3,Customer Success,CSE
54,3,Sales,FSR
55,2,Sales,FSR
56,3,Sales,AE
57,3,Product,PM
58,1,Sales,SE
59,1,Sales,FSR
60,3,Sales,FSR
61,4,Product,UI
62,4,Customer Success,CSM
63,1,Engineering,Data Eng
64,4,Engineering,SWE
65,2,Sales,AE
66,3,Engineering,Data Eng
67,3,Customer Success,TSM
68,4,Customer Success,CSE
69,1,Product,UI
70,4,Product,UX
71,4,Engineering,SWE
72,1,Customer Success,TSM
73,4,Product,UX
66,4,Marketing,Marketing Analyst
67,2,Sales,AE
68,2,Product,PM
69,1,Product,UX
70,1,Sales,SE
71,3,Product,PM
72,3,Engineering,Data Eng
73,2,Customer Success,TSM
74,1,Product,PM
75,4,Customer Success,CSM
76,1,Marketing,Marketing Analyst
77,3,Product,PM
78,1,Product,UX
79,3,Sales,AE
80,2,Product,UX
81,4,Engineering,SWE
82,3,Sales,SE
83,3,Marketing,Marketing Analyst
84,4,Engineering,SWE
85,3,Marketing,Marketing Analyst
86,2,Marketing,Marketing Analyst
87,3,Customer Success,CSE
88,3,Engineering,Data Eng
89,3,Customer Success,TSM
90,1,Product,PM
91,2,Marketing,Marketing Manager
92,4,Engineering,SWE
93,4,Customer Success,TSM
94,2,Customer Success,CSE
95,2,Product,UI
96,4,Sales,SE
97,1,Marketing,Marketing Manager
98,4,Marketing,Marketing Analyst
99,3,Marketing,Marketing Analyst
100,1,Customer Success,CSE
75,1,Customer Success,TSM
76,3,Engineering,Data Eng
77,2,Customer Success,CSM
78,4,Marketing,Marketing Manager
79,3,Customer Success,CSE
80,1,Product,PM
81,1,Sales,AE
82,4,Engineering,Data Eng
83,3,Engineering,Data Eng
84,3,Product,PM
85,4,Product,UI
86,2,Customer Success,CSM
87,2,Product,UX
88,4,Product,UX
89,4,Product,UX
90,4,Product,UX
91,3,Customer Success,CSE
92,2,Product,UX
93,2,Engineering,Data Eng
94,2,Engineering,Data Eng
95,3,Customer Success,CSM
96,4,Product,PM
97,4,Engineering,Data Eng
98,1,Engineering,SWE
99,3,Marketing,Marketing Manager
100,1,Customer Success,CSM
2 changes: 2 additions & 0 deletions fake.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,12 @@
import datetime
import itertools
import json
import typing

from utils import DataUtil
import faker
fake = faker.Faker()

jobs_out = []
@dataclasses.dataclass
class Jobs(DataUtil.DataUtil):
Expand Down
12 changes: 6 additions & 6 deletions prev_roles.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
import datetime
import random
titles_by_org = {
"sales": ["AE", "SE", "FSR"],
"marketing": ["Marketing Analyst", "Marketing Manager"],
"engineering": ["SWE", "Data Eng"],
"product": ["PM", "UI", "UX"],
"customer_success": ["CSM", "CSE", "TSM"],
"Sales": ["AE", "SE", "FSR"],
"Marketing": ["Marketing Analyst", "Marketing Manager"],
"Engineering": ["SWE", "Data Eng"],
"Product": ["PM", "UI", "UX"],
"Customer Success": ["CSM", "CSE", "TSM"],
}

today = datetime.date.today()
Expand All @@ -21,5 +21,5 @@
row["hired_date"], '%Y-%m-%d').date())).days
if days_since_hired / 365 > 6:
row["title"] = random.choices(
[i for i in titles_by_org[row["org"].lower().replace(' ', '_')] if i != row["org"]])[0]
[i for i in titles_by_org[row["org"]] if i != row["org"]])[0]
dict_writer.writerow(row.values())
22 changes: 0 additions & 22 deletions yaml/job_listings.yaml

This file was deleted.

24 changes: 22 additions & 2 deletions yaml/open_jobs.yaml
Original file line number Diff line number Diff line change
@@ -1,2 +1,22 @@
Openings:
job_id: { type: int }
Jobs:
id: { type: int, primary_key: True }
level: { type: int, dist: { min: 1, max: 5 } }
org:
{
type: str,
values:
["Sales", "Marketing", "Engineering", "Product", "Customer Success"],
}
title:
{
type: str,
depends_on: ["org"],
mapping:
{
"Sales": ["AE", "SE", "FSR"],
"Marketing": ["Marketing Analyst", "Marketing Manager"],
"Engineering": ["SWE", "Data Eng"],
"Product": ["PM", "UI", "UX"],
"Customer Success": ["CSM", "CSE", "TSM"],
},
}