adding Swisscloud content metadata

This commit is contained in:
2023-05-17 14:02:14 +00:00
commit 408b2ece89
57 changed files with 3910 additions and 0 deletions

File diff suppressed because it is too large Load Diff

22
tools/convert_data.py Normal file
View File

@ -0,0 +1,22 @@
import re
import otc_metadata.services
from ruamel.yaml import YAML
data = otc_metadata.services.Services()
new_data = data._service_data
# services = data.service_dict
for doc in new_data["documents"]:
hc_location = None
link = doc.get("link")
if link:
print(f"Parsing {link}")
# (p1, p2) = link.split("/")
doc["link"] = re.sub(r"/(.*)/(.*)/", r"/\2/\1/", link)
_yaml = YAML()
_yaml.indent(mapping=2, sequence=4, offset=2)
with open("new.yaml", "w") as fd:
_yaml.dump(new_data, fd)

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,23 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys
from ruamel.yaml import YAML
import otc_metadata.services
def main():
data = otc_metadata.services.Services()
_yaml = YAML()
_yaml.indent(mapping=2, sequence=4, offset=2)
sys.stdout.write(
"# Auto-generated by otc_metadata.generate_docexports.data\n"
)
_yaml.dump(data.docs_html_by_category("internal"), sys.stdout)
if __name__ == "__main__":
main()

73
tools/open_doc_issue.py Normal file
View File

@ -0,0 +1,73 @@
#!/usr/bin/env python
import argparse
# import re
import requests
# import sys
import otc_metadata.services
api_session = requests.Session()
def open_issue(args, repository, issue_data):
req = dict(
title=issue_data["title"], body=issue_data["body"].replace("\\n", "\n")
)
if "assignees" in issue_data:
req["assignees"] = issue_data["assignees"]
if "labels" in issue_data:
req["labels"] = issue_data["labels"]
print(req)
rsp = api_session.post(
f"{args.api_url}/repos/{repository}/issues", json=req
)
if rsp.status_code != 201:
print(rsp.text)
print(
f"Going to open issue with title {issue_data['title']} in {repository}"
)
def main():
parser = argparse.ArgumentParser(
description="Open Issue for every document."
)
parser.add_argument("token", metavar="token", help="API token")
parser.add_argument("--api-url", help="API base url of the Git hoster")
parser.add_argument("--environment", help="Environment for the repository")
parser.add_argument("--title", required=True, help="Issue title")
parser.add_argument("--body", required=True, help="Issue body")
parser.add_argument(
"--repo",
help="Repository to report issue in (instead of doc repository).",
)
parser.add_argument(
"--assignee",
help="Issue assignee to use instead of document service assignees.",
)
parser.add_argument(
"--labels",
help="Issue labels to use (comma separated list of label IDs).",
)
args = parser.parse_args()
data = otc_metadata.services.Services()
api_session.headers.update({"Authorization": f"token {args.token}"})
for doc in data.all_docs_full(environment=args.environment):
issue_data = dict(
title=args.title.format(**doc),
body=args.body.format(**doc),
repository=doc["repository"],
)
if "assignees" in doc:
issue_data["assignees"] = doc["assignees"]
if args.assignee:
issue_data["assignees"] = [args.assignee]
if args.labels:
issue_data["labels"] = [int(x) for x in args.labels.split(",")]
open_issue(args, args.repo or doc["repository"], issue_data)
if __name__ == "__main__":
main()

50
tools/service_list Normal file
View File

@ -0,0 +1,50 @@
antiddos
aom
as
bms
cbr
cce
cdn
ces
csbs
css
cts
das
dc
dcs
dds
deh
dis
dms
dns
drs
dws
ecs
eip
elb
evs
gaussdb_mysql
gaussdb_nosql
iam
ims
kms
lts
ma
mrs
natgw
obs
opengauss
plas
rds
rts
sdrs
sfs
smn
swr
tms
vbs
vpc
vpcep
vpn
waf
wafd

9
tools/sort_metadata.py Normal file
View File

@ -0,0 +1,9 @@
# import copy
import otc_metadata.services
# from ruamel.yaml import YAML
data = otc_metadata.services.Services()
data._sort_data()
data._rewrite_data()

201
tools/sync_doc_repo.py Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff