Merge remote-tracking branch 'origin/main' into fix-ci-sync-fork
This commit is contained in:
commit
8d1ee20325
|
@ -10,9 +10,9 @@ on:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
deploy:
|
deploy:
|
||||||
runs-on: ubuntu-18.04
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v3
|
||||||
|
|
||||||
- name: Setup Python
|
- name: Setup Python
|
||||||
uses: actions/setup-python@v2
|
uses: actions/setup-python@v2
|
||||||
|
|
|
@ -55,4 +55,6 @@ ZENHUB_TOKEN=<INSERT> \
|
||||||
poetry run python ./zcash-issue-dag.py
|
poetry run python ./zcash-issue-dag.py
|
||||||
```
|
```
|
||||||
|
|
||||||
|
You can find a series of template script files inside the folder `template_scripts`.
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -20,4 +20,4 @@
|
||||||
</footer>
|
</footer>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -3,6 +3,12 @@
|
||||||
/* Material dark theme surface colour */
|
/* Material dark theme surface colour */
|
||||||
fill: #121212;
|
fill: #121212;
|
||||||
}
|
}
|
||||||
|
svg .cluster polygon {
|
||||||
|
stroke: #1976d2;
|
||||||
|
}
|
||||||
|
svg .cluster text {
|
||||||
|
fill: #c9d1d9;
|
||||||
|
}
|
||||||
svg .node polygon {
|
svg .node polygon {
|
||||||
stroke: #c9d1d9;
|
stroke: #c9d1d9;
|
||||||
}
|
}
|
||||||
|
@ -14,6 +20,9 @@
|
||||||
/* Material Blue 700 */
|
/* Material Blue 700 */
|
||||||
fill: #1976d2;
|
fill: #1976d2;
|
||||||
}
|
}
|
||||||
|
svg .node.needs-review polygon {
|
||||||
|
fill: #d29b19;
|
||||||
|
}
|
||||||
svg .node.closed polygon {
|
svg .node.closed polygon {
|
||||||
fill: #cf6b66;
|
fill: #cf6b66;
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
#GITHUB_TOKEN=<INSERT> \
|
||||||
|
#ZENHUB_TOKEN=<INSERT> \
|
||||||
|
poetry run python3 -m sgqlc.introspection \
|
||||||
|
--exclude-deprecated \
|
||||||
|
--exclude-description \
|
||||||
|
-H "Authorization: bearer $GITHUB_TOKEN" \
|
||||||
|
https://api.github.com/graphql \
|
||||||
|
github_schema.json
|
||||||
|
|
||||||
|
poetry run sgqlc-codegen schema github_schema.json github_schema.py
|
|
@ -0,0 +1,7 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
DAG_VIEW=wallet-android \
|
||||||
|
SHOW_MILESTONES=true \
|
||||||
|
#GITHUB_TOKEN=<INSERT> \
|
||||||
|
#ZENHUB_TOKEN=<INSERT> \
|
||||||
|
poetry run python ./zcash-issue-dag.py
|
|
@ -0,0 +1,7 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
DAG_VIEW=wallet \
|
||||||
|
SHOW_MILESTONES=true \
|
||||||
|
#GITHUB_TOKEN=<INSERT> \
|
||||||
|
#ZENHUB_TOKEN=<INSERT> \
|
||||||
|
poetry run python ./zcash-issue-dag.py
|
|
@ -0,0 +1,7 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
DAG_VIEW=wallet-ios \
|
||||||
|
SHOW_MILESTONES=true \
|
||||||
|
#GITHUB_TOKEN=<INSERT> \
|
||||||
|
#ZENHUB_TOKEN=<INSERT> \
|
||||||
|
poetry run python ./zcash-issue-dag.py
|
|
@ -116,6 +116,7 @@ class GitHubIssue:
|
||||||
self.title = data['title']
|
self.title = data['title']
|
||||||
self.is_pr = 'merged' in data
|
self.is_pr = 'merged' in data
|
||||||
self.is_committed = 'S-committed' in labels
|
self.is_committed = 'S-committed' in labels
|
||||||
|
self.waiting_on_review = 'S-waiting-on-review' in labels
|
||||||
self.url = data['url']
|
self.url = data['url']
|
||||||
self.state = 'closed' if data['state'] in ['CLOSED', 'MERGED'] else 'open'
|
self.state = 'closed' if data['state'] in ['CLOSED', 'MERGED'] else 'open'
|
||||||
if 'milestone' in data and data['milestone']:
|
if 'milestone' in data and data['milestone']:
|
||||||
|
@ -327,6 +328,9 @@ def main():
|
||||||
if n.state == 'closed':
|
if n.state == 'closed':
|
||||||
attrs['class'] = 'closed'
|
attrs['class'] = 'closed'
|
||||||
attrs['fillcolor'] = '#fad8c7'
|
attrs['fillcolor'] = '#fad8c7'
|
||||||
|
elif n.waiting_on_review:
|
||||||
|
attrs['class'] = 'needs-review'
|
||||||
|
attrs['fillcolor'] = '#dfc150'
|
||||||
elif n.is_committed:
|
elif n.is_committed:
|
||||||
attrs['class'] = 'committed'
|
attrs['class'] = 'committed'
|
||||||
attrs['fillcolor'] = '#a6cfff'
|
attrs['fillcolor'] = '#a6cfff'
|
||||||
|
@ -345,20 +349,23 @@ def main():
|
||||||
|
|
||||||
ag = nx.nx_agraph.to_agraph(dg)
|
ag = nx.nx_agraph.to_agraph(dg)
|
||||||
|
|
||||||
|
clusters = 0
|
||||||
if SHOW_MILESTONES:
|
if SHOW_MILESTONES:
|
||||||
# Identify milestone nbunches
|
# Identify milestone nbunches
|
||||||
milestones = {n.milestone: [] for n in dg}
|
milestones = {n.milestone: [] for n in dg}
|
||||||
for m in milestones:
|
for m in milestones:
|
||||||
milestones[m] = [n for n in dg if n.milestone == m]
|
milestones[m] = [n for n in dg if n.milestone == m]
|
||||||
del milestones[None]
|
del milestones[None]
|
||||||
for (i, (milestone, nodes)) in enumerate(milestones.items()):
|
for (milestone, nodes) in milestones.items():
|
||||||
ag.add_subgraph(nodes, 'cluster_%d' % i, label=milestone, color='blue')
|
ag.add_subgraph(nodes, 'cluster_%d' % clusters, label=milestone, color='blue')
|
||||||
|
clusters += 1
|
||||||
|
|
||||||
if SHOW_EPICS:
|
if SHOW_EPICS:
|
||||||
for (i, (epic, issues)) in enumerate(issues_by_epic.items()):
|
for (epic, issues) in issues_by_epic.items():
|
||||||
issues = [n for n in dg if (n.repo_id, n.issue_number) in issues]
|
issues = [n for n in dg if (n.repo_id, n.issue_number) in issues]
|
||||||
if issues:
|
if issues:
|
||||||
ag.add_subgraph(issues, 'cluster_%d' % i, label=epic.title, color='blue')
|
ag.add_subgraph(issues, 'cluster_%d' % clusters, label=epic.title, color='blue')
|
||||||
|
clusters += 1
|
||||||
|
|
||||||
# Draw the result!
|
# Draw the result!
|
||||||
ag.graph_attr['rankdir'] = 'LR'
|
ag.graph_attr['rankdir'] = 'LR'
|
||||||
|
|
Loading…
Reference in New Issue