cartography 0.97.1__tar.gz → 0.98.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of cartography might be problematic. Click here for more details.

Files changed (867) hide show
  1. cartography-0.98.0/.cache/.gitignore +5 -0
  2. cartography-0.98.0/.dockerignore +6 -0
  3. cartography-0.98.0/.env +4 -0
  4. cartography-0.98.0/.github/ISSUE_TEMPLATE/issue-report-feature-request.md +47 -0
  5. cartography-0.98.0/.github/pull_request_template.md +23 -0
  6. cartography-0.98.0/.github/stale.yml +17 -0
  7. cartography-0.98.0/.github/workflows/ossf-scorecard.yml +64 -0
  8. cartography-0.98.0/.github/workflows/publish-to-ghcr-and-pypi.yml +92 -0
  9. cartography-0.98.0/.github/workflows/sphinx.yml +109 -0
  10. cartography-0.98.0/.github/workflows/test_suite.yml +114 -0
  11. cartography-0.98.0/.gitignore +21 -0
  12. cartography-0.98.0/.pre-commit-config.yaml +48 -0
  13. cartography-0.98.0/CODE_OF_CONDUCT.md +2 -0
  14. cartography-0.98.0/Dockerfile +25 -0
  15. cartography-0.98.0/GOVERNANCE.md +16 -0
  16. cartography-0.98.0/MAINTAINERS.md +32 -0
  17. cartography-0.98.0/Makefile +10 -0
  18. cartography-0.98.0/PKG-INFO +187 -0
  19. cartography-0.98.0/cartography/_version.py +16 -0
  20. cartography-0.98.0/cartography/client/core/tx.py +257 -0
  21. cartography-0.98.0/cartography/data/indexes.cypher +405 -0
  22. cartography-0.98.0/cartography/data/jobs/analysis/aws_ec2_asset_exposure.json +49 -0
  23. cartography-0.98.0/cartography/data/jobs/analysis/gcp_compute_asset_inet_exposure.json +41 -0
  24. cartography-0.98.0/cartography/graph/cleanupbuilder.py +206 -0
  25. cartography-0.98.0/cartography/intel/aws/ec2/instances.py +342 -0
  26. cartography-0.98.0/cartography/intel/aws/ec2/key_pairs.py +80 -0
  27. cartography-0.98.0/cartography/intel/aws/resourcegroupstaggingapi.py +248 -0
  28. cartography-0.98.0/cartography/intel/gcp/__init__.py +357 -0
  29. cartography-0.98.0/cartography/intel/github/users.py +255 -0
  30. cartography-0.98.0/cartography/intel/gsuite/__init__.py +117 -0
  31. cartography-0.98.0/cartography/intel/gsuite/api.py +284 -0
  32. cartography-0.98.0/cartography/models/aws/ec2/keypair.py +54 -0
  33. cartography-0.98.0/cartography/models/aws/ec2/keypair_instance.py +69 -0
  34. cartography-0.98.0/cartography/util.py +441 -0
  35. cartography-0.98.0/cartography.egg-info/PKG-INFO +187 -0
  36. cartography-0.98.0/cartography.egg-info/SOURCES.txt +846 -0
  37. cartography-0.98.0/cartography.egg-info/requires.txt +42 -0
  38. cartography-0.98.0/dev-entrypoint.sh +7 -0
  39. cartography-0.98.0/dev.Dockerfile +36 -0
  40. cartography-0.98.0/docker-compose.yml +80 -0
  41. cartography-0.98.0/docs/build.sh +35 -0
  42. cartography-0.98.0/docs/conf.py +233 -0
  43. cartography-0.98.0/docs/requirements.txt +3 -0
  44. cartography-0.98.0/docs/root/contact.md +9 -0
  45. cartography-0.98.0/docs/root/dev/developer-guide.md +222 -0
  46. cartography-0.98.0/docs/root/dev/index.rst +8 -0
  47. cartography-0.98.0/docs/root/dev/writing-analysis-jobs.md +122 -0
  48. cartography-0.98.0/docs/root/dev/writing-intel-modules.md +340 -0
  49. cartography-0.98.0/docs/root/images/accountsandrds.png +0 -0
  50. cartography-0.98.0/docs/root/images/anonbuckets.png +0 -0
  51. cartography-0.98.0/docs/root/images/app-direct.png +0 -0
  52. cartography-0.98.0/docs/root/images/app-with-api.png +0 -0
  53. cartography-0.98.0/docs/root/images/basic-dataflow.png +0 -0
  54. cartography-0.98.0/docs/root/images/bucketsbyuser.png +0 -0
  55. cartography-0.98.0/docs/root/images/cartography-schema-complete-open-source.png +0 -0
  56. cartography-0.98.0/docs/root/images/changecolor.png +0 -0
  57. cartography-0.98.0/docs/root/images/cncf-color.png +0 -0
  58. cartography-0.98.0/docs/root/images/customizeview.png +0 -0
  59. cartography-0.98.0/docs/root/images/docker-compose-run.png +0 -0
  60. cartography-0.98.0/docs/root/images/dockercompose-flow.png +0 -0
  61. cartography-0.98.0/docs/root/images/dockercompose-result.png +0 -0
  62. cartography-0.98.0/docs/root/images/ec2-inet-open.png +0 -0
  63. cartography-0.98.0/docs/root/images/exposed-internet.png +0 -0
  64. cartography-0.98.0/docs/root/images/logo-horizontal.png +0 -0
  65. cartography-0.98.0/docs/root/images/logo-vertical.png +0 -0
  66. cartography-0.98.0/docs/root/images/logo-vertical.svg +20 -0
  67. cartography-0.98.0/docs/root/images/nativeinstall-run.png +0 -0
  68. cartography-0.98.0/docs/root/images/parallel-crons.png +0 -0
  69. cartography-0.98.0/docs/root/images/pipeline-hive-mode.png +0 -0
  70. cartography-0.98.0/docs/root/images/pipeline-neodash.png +0 -0
  71. cartography-0.98.0/docs/root/images/poweruser.png +0 -0
  72. cartography-0.98.0/docs/root/images/selectnode.png +0 -0
  73. cartography-0.98.0/docs/root/images/unencryptedcounts.png +0 -0
  74. cartography-0.98.0/docs/root/images/unencryptedinstances.png +0 -0
  75. cartography-0.98.0/docs/root/images/yourowntestmachine.png +0 -0
  76. cartography-0.98.0/docs/root/index.rst +32 -0
  77. cartography-0.98.0/docs/root/info.md +17 -0
  78. cartography-0.98.0/docs/root/install.md +236 -0
  79. cartography-0.98.0/docs/root/modules/_cartography-metadata/schema.md +18 -0
  80. cartography-0.98.0/docs/root/modules/aws/config.md +100 -0
  81. cartography-0.98.0/docs/root/modules/aws/index.rst +8 -0
  82. cartography-0.98.0/docs/root/modules/aws/permissions-mapping.md +33 -0
  83. cartography-0.98.0/docs/root/modules/aws/schema.md +3469 -0
  84. cartography-0.98.0/docs/root/modules/azure/config.md +18 -0
  85. cartography-0.98.0/docs/root/modules/azure/index.rst +7 -0
  86. cartography-0.98.0/docs/root/modules/azure/schema.md +1173 -0
  87. cartography-0.98.0/docs/root/modules/bigfix/config.md +10 -0
  88. cartography-0.98.0/docs/root/modules/bigfix/index.rst +7 -0
  89. cartography-0.98.0/docs/root/modules/bigfix/schema.md +49 -0
  90. cartography-0.98.0/docs/root/modules/crowdstrike/config.md +11 -0
  91. cartography-0.98.0/docs/root/modules/crowdstrike/index.rst +7 -0
  92. cartography-0.98.0/docs/root/modules/crowdstrike/schema.md +103 -0
  93. cartography-0.98.0/docs/root/modules/cve/config.md +8 -0
  94. cartography-0.98.0/docs/root/modules/cve/index.rst +7 -0
  95. cartography-0.98.0/docs/root/modules/cve/schema.md +40 -0
  96. cartography-0.98.0/docs/root/modules/digitalocean/config.md +15 -0
  97. cartography-0.98.0/docs/root/modules/digitalocean/index.rst +7 -0
  98. cartography-0.98.0/docs/root/modules/digitalocean/schema.md +82 -0
  99. cartography-0.98.0/docs/root/modules/duo/config.md +10 -0
  100. cartography-0.98.0/docs/root/modules/duo/index.rst +7 -0
  101. cartography-0.98.0/docs/root/modules/duo/schema.md +311 -0
  102. cartography-0.98.0/docs/root/modules/gcp/config.md +21 -0
  103. cartography-0.98.0/docs/root/modules/gcp/index.rst +7 -0
  104. cartography-0.98.0/docs/root/modules/gcp/schema.md +639 -0
  105. cartography-0.98.0/docs/root/modules/github/config.md +49 -0
  106. cartography-0.98.0/docs/root/modules/github/index.rst +7 -0
  107. cartography-0.98.0/docs/root/modules/github/schema.md +297 -0
  108. cartography-0.98.0/docs/root/modules/gsuite/config.md +93 -0
  109. cartography-0.98.0/docs/root/modules/gsuite/index.rst +7 -0
  110. cartography-0.98.0/docs/root/modules/gsuite/schema.md +62 -0
  111. cartography-0.98.0/docs/root/modules/index.rst +4 -0
  112. cartography-0.98.0/docs/root/modules/jamf/index.rst +7 -0
  113. cartography-0.98.0/docs/root/modules/jamf/schema.md +17 -0
  114. cartography-0.98.0/docs/root/modules/kandji/config.md +11 -0
  115. cartography-0.98.0/docs/root/modules/kandji/index.rst +7 -0
  116. cartography-0.98.0/docs/root/modules/kandji/schema.md +34 -0
  117. cartography-0.98.0/docs/root/modules/kubernetes/config.md +9 -0
  118. cartography-0.98.0/docs/root/modules/kubernetes/index.rst +7 -0
  119. cartography-0.98.0/docs/root/modules/kubernetes/schema.md +134 -0
  120. cartography-0.98.0/docs/root/modules/lastpass/config.md +9 -0
  121. cartography-0.98.0/docs/root/modules/lastpass/index.rst +7 -0
  122. cartography-0.98.0/docs/root/modules/lastpass/schema.md +45 -0
  123. cartography-0.98.0/docs/root/modules/oci/config.md +1 -0
  124. cartography-0.98.0/docs/root/modules/oci/index.rst +7 -0
  125. cartography-0.98.0/docs/root/modules/oci/schema.md +189 -0
  126. cartography-0.98.0/docs/root/modules/okta/config.md +12 -0
  127. cartography-0.98.0/docs/root/modules/okta/index.rst +7 -0
  128. cartography-0.98.0/docs/root/modules/okta/schema.md +271 -0
  129. cartography-0.98.0/docs/root/modules/pagerduty/config.md +10 -0
  130. cartography-0.98.0/docs/root/modules/pagerduty/index.rst +7 -0
  131. cartography-0.98.0/docs/root/modules/pagerduty/schema.md +222 -0
  132. cartography-0.98.0/docs/root/modules/semgrep/config.md +15 -0
  133. cartography-0.98.0/docs/root/modules/semgrep/index.rst +7 -0
  134. cartography-0.98.0/docs/root/modules/semgrep/schema.md +151 -0
  135. cartography-0.98.0/docs/root/modules/snipeit/config.md +11 -0
  136. cartography-0.98.0/docs/root/modules/snipeit/index.rst +7 -0
  137. cartography-0.98.0/docs/root/modules/snipeit/schema.md +55 -0
  138. cartography-0.98.0/docs/root/ops.md +73 -0
  139. cartography-0.98.0/docs/root/usage/applications.md +29 -0
  140. cartography-0.98.0/docs/root/usage/drift-detect.md +166 -0
  141. cartography-0.98.0/docs/root/usage/index.rst +10 -0
  142. cartography-0.98.0/docs/root/usage/samplequeries.md +120 -0
  143. cartography-0.98.0/docs/root/usage/schema.md +44 -0
  144. cartography-0.98.0/docs/root/usage/tutorial.md +190 -0
  145. cartography-0.98.0/pyproject.toml +105 -0
  146. cartography-0.98.0/setup.py +4 -0
  147. cartography-0.98.0/tests/__init__.py +0 -0
  148. cartography-0.98.0/tests/data/__init__.py +0 -0
  149. cartography-0.98.0/tests/data/aws/__init__.py +0 -0
  150. cartography-0.98.0/tests/data/aws/apigateway.py +146 -0
  151. cartography-0.98.0/tests/data/aws/config.py +36 -0
  152. cartography-0.98.0/tests/data/aws/dynamodb.py +277 -0
  153. cartography-0.98.0/tests/data/aws/ec2/__init__.py +0 -0
  154. cartography-0.98.0/tests/data/aws/ec2/auto_scaling_groups.py +164 -0
  155. cartography-0.98.0/tests/data/aws/ec2/elastic_ip_addresses.py +13 -0
  156. cartography-0.98.0/tests/data/aws/ec2/images.py +36 -0
  157. cartography-0.98.0/tests/data/aws/ec2/instances.py +524 -0
  158. cartography-0.98.0/tests/data/aws/ec2/internet_gateway.py +45 -0
  159. cartography-0.98.0/tests/data/aws/ec2/key_pairs.py +21 -0
  160. cartography-0.98.0/tests/data/aws/ec2/launch_templates.py +62 -0
  161. cartography-0.98.0/tests/data/aws/ec2/load_balancers.py +172 -0
  162. cartography-0.98.0/tests/data/aws/ec2/network_acls/__init__.py +0 -0
  163. cartography-0.98.0/tests/data/aws/ec2/network_acls/instances.py +137 -0
  164. cartography-0.98.0/tests/data/aws/ec2/network_acls/network_acls.py +63 -0
  165. cartography-0.98.0/tests/data/aws/ec2/network_acls/subnets.py +50 -0
  166. cartography-0.98.0/tests/data/aws/ec2/network_acls/vpcs.py +20 -0
  167. cartography-0.98.0/tests/data/aws/ec2/network_interfaces.py +134 -0
  168. cartography-0.98.0/tests/data/aws/ec2/reserved_instances.py +38 -0
  169. cartography-0.98.0/tests/data/aws/ec2/security_groups.py +218 -0
  170. cartography-0.98.0/tests/data/aws/ec2/snapshots.py +28 -0
  171. cartography-0.98.0/tests/data/aws/ec2/subnets.py +91 -0
  172. cartography-0.98.0/tests/data/aws/ec2/tgw.py +76 -0
  173. cartography-0.98.0/tests/data/aws/ec2/volumes.py +44 -0
  174. cartography-0.98.0/tests/data/aws/ec2/vpc_peerings.py +47 -0
  175. cartography-0.98.0/tests/data/aws/ecr.py +72 -0
  176. cartography-0.98.0/tests/data/aws/ecs.py +319 -0
  177. cartography-0.98.0/tests/data/aws/eks.py +67 -0
  178. cartography-0.98.0/tests/data/aws/elasticache.py +279 -0
  179. cartography-0.98.0/tests/data/aws/emr.py +189 -0
  180. cartography-0.98.0/tests/data/aws/iam/__init__.py +189 -0
  181. cartography-0.98.0/tests/data/aws/iam/role_policies.py +173 -0
  182. cartography-0.98.0/tests/data/aws/iam/user_policies.py +206 -0
  183. cartography-0.98.0/tests/data/aws/identitycenter.py +53 -0
  184. cartography-0.98.0/tests/data/aws/inspector.py +194 -0
  185. cartography-0.98.0/tests/data/aws/kms.py +81 -0
  186. cartography-0.98.0/tests/data/aws/lambda_function.py +351 -0
  187. cartography-0.98.0/tests/data/aws/rds.py +213 -0
  188. cartography-0.98.0/tests/data/aws/redshift.py +101 -0
  189. cartography-0.98.0/tests/data/aws/resourcegroupstaggingapi.py +42 -0
  190. cartography-0.98.0/tests/data/aws/route53.py +115 -0
  191. cartography-0.98.0/tests/data/aws/s3.py +136 -0
  192. cartography-0.98.0/tests/data/aws/secretsmanager.py +29 -0
  193. cartography-0.98.0/tests/data/aws/securityhub.py +5 -0
  194. cartography-0.98.0/tests/data/aws/sqs.py +21 -0
  195. cartography-0.98.0/tests/data/aws/ssm.py +78 -0
  196. cartography-0.98.0/tests/data/azure/__init__.py +0 -0
  197. cartography-0.98.0/tests/data/azure/compute.py +180 -0
  198. cartography-0.98.0/tests/data/azure/cosmosdb.py +416 -0
  199. cartography-0.98.0/tests/data/azure/sql.py +327 -0
  200. cartography-0.98.0/tests/data/azure/storage.py +189 -0
  201. cartography-0.98.0/tests/data/bigfix/__init__.py +0 -0
  202. cartography-0.98.0/tests/data/bigfix/computers.py +168 -0
  203. cartography-0.98.0/tests/data/crowdstrike/__init__.py +0 -0
  204. cartography-0.98.0/tests/data/crowdstrike/endpoints.py +55 -0
  205. cartography-0.98.0/tests/data/crowdstrike/spotlight.py +64 -0
  206. cartography-0.98.0/tests/data/cve/__init__.py +0 -0
  207. cartography-0.98.0/tests/data/cve/feed.py +508 -0
  208. cartography-0.98.0/tests/data/detectors/test_expectations.json +13 -0
  209. cartography-0.98.0/tests/data/detectors/test_multiple_expectations.json +13 -0
  210. cartography-0.98.0/tests/data/detectors/test_multiple_properties.json +13 -0
  211. cartography-0.98.0/tests/data/digitalocean/__init__.py +0 -0
  212. cartography-0.98.0/tests/data/digitalocean/compute.py +27 -0
  213. cartography-0.98.0/tests/data/digitalocean/management.py +13 -0
  214. cartography-0.98.0/tests/data/digitalocean/platform.py +8 -0
  215. cartography-0.98.0/tests/data/duo/__init__.py +0 -0
  216. cartography-0.98.0/tests/data/duo/endpoints.py +163 -0
  217. cartography-0.98.0/tests/data/duo/groups.py +42 -0
  218. cartography-0.98.0/tests/data/duo/phones.py +162 -0
  219. cartography-0.98.0/tests/data/duo/tokens.py +79 -0
  220. cartography-0.98.0/tests/data/duo/users.py +310 -0
  221. cartography-0.98.0/tests/data/duo/web_authn_credentials.py +77 -0
  222. cartography-0.98.0/tests/data/gcp/__init__.py +0 -0
  223. cartography-0.98.0/tests/data/gcp/compute.py +729 -0
  224. cartography-0.98.0/tests/data/gcp/crm.py +44 -0
  225. cartography-0.98.0/tests/data/gcp/dns.py +76 -0
  226. cartography-0.98.0/tests/data/gcp/gke.py +126 -0
  227. cartography-0.98.0/tests/data/gcp/storage.py +33 -0
  228. cartography-0.98.0/tests/data/github/__init__.py +0 -0
  229. cartography-0.98.0/tests/data/github/rate_limit.py +39 -0
  230. cartography-0.98.0/tests/data/github/repos.py +253 -0
  231. cartography-0.98.0/tests/data/github/teams.py +86 -0
  232. cartography-0.98.0/tests/data/github/users.py +132 -0
  233. cartography-0.98.0/tests/data/graph/__init__.py +0 -0
  234. cartography-0.98.0/tests/data/graph/querybuilder/__init__.py +0 -0
  235. cartography-0.98.0/tests/data/graph/querybuilder/sample_data/__init__.py +0 -0
  236. cartography-0.98.0/tests/data/graph/querybuilder/sample_data/case_insensitive_prop_ref.py +67 -0
  237. cartography-0.98.0/tests/data/graph/querybuilder/sample_data/helloworld_relationships.py +67 -0
  238. cartography-0.98.0/tests/data/graph/querybuilder/sample_data/multiple_attr_match.py +37 -0
  239. cartography-0.98.0/tests/data/graph/querybuilder/sample_data/simple_node_missing_fields.py +20 -0
  240. cartography-0.98.0/tests/data/graph/querybuilder/sample_models/__init__.py +0 -0
  241. cartography-0.98.0/tests/data/graph/querybuilder/sample_models/asset_with_non_kwargs_tgm.py +38 -0
  242. cartography-0.98.0/tests/data/graph/querybuilder/sample_models/fake_emps_githubusers.py +44 -0
  243. cartography-0.98.0/tests/data/graph/querybuilder/sample_models/fake_emps_githubusers_fuzzy.py +44 -0
  244. cartography-0.98.0/tests/data/graph/querybuilder/sample_models/interesting_asset.py +94 -0
  245. cartography-0.98.0/tests/data/graph/querybuilder/sample_models/multiple_attr_match.py +51 -0
  246. cartography-0.98.0/tests/data/graph/querybuilder/sample_models/simple_node.py +49 -0
  247. cartography-0.98.0/tests/data/jamf/__init__.py +0 -0
  248. cartography-0.98.0/tests/data/jamf/computers.py +6 -0
  249. cartography-0.98.0/tests/data/jobs/__init__.py +0 -0
  250. cartography-0.98.0/tests/data/jobs/sample.py +19 -0
  251. cartography-0.98.0/tests/data/kandji/__init__.py +0 -0
  252. cartography-0.98.0/tests/data/kandji/devices.py +46 -0
  253. cartography-0.98.0/tests/data/kandji/tenant.py +8 -0
  254. cartography-0.98.0/tests/data/kubernetes/__init__.py +0 -0
  255. cartography-0.98.0/tests/data/kubernetes/namespaces.py +23 -0
  256. cartography-0.98.0/tests/data/kubernetes/pods.py +49 -0
  257. cartography-0.98.0/tests/data/kubernetes/secrets.py +17 -0
  258. cartography-0.98.0/tests/data/kubernetes/services.py +26 -0
  259. cartography-0.98.0/tests/data/lastpass/__init__.py +0 -0
  260. cartography-0.98.0/tests/data/lastpass/users.py +44 -0
  261. cartography-0.98.0/tests/data/oci/__init__.py +1 -0
  262. cartography-0.98.0/tests/data/oci/iam.py +170 -0
  263. cartography-0.98.0/tests/data/okta/__init__.py +0 -0
  264. cartography-0.98.0/tests/data/okta/adminroles.py +65 -0
  265. cartography-0.98.0/tests/data/okta/application.py +162 -0
  266. cartography-0.98.0/tests/data/okta/groups.py +201 -0
  267. cartography-0.98.0/tests/data/okta/trustedorigin.py +77 -0
  268. cartography-0.98.0/tests/data/okta/userfactors.py +16 -0
  269. cartography-0.98.0/tests/data/okta/users.py +27 -0
  270. cartography-0.98.0/tests/data/okta/utils.py +27 -0
  271. cartography-0.98.0/tests/data/pagerduty/__init__.py +0 -0
  272. cartography-0.98.0/tests/data/pagerduty/escalation_policies.py +52 -0
  273. cartography-0.98.0/tests/data/pagerduty/schedules.py +57 -0
  274. cartography-0.98.0/tests/data/pagerduty/services.py +103 -0
  275. cartography-0.98.0/tests/data/pagerduty/teams.py +11 -0
  276. cartography-0.98.0/tests/data/pagerduty/users.py +86 -0
  277. cartography-0.98.0/tests/data/pagerduty/vendors.py +14 -0
  278. cartography-0.98.0/tests/data/semgrep/__init__.py +0 -0
  279. cartography-0.98.0/tests/data/semgrep/dependencies.py +85 -0
  280. cartography-0.98.0/tests/data/semgrep/deployment.py +5 -0
  281. cartography-0.98.0/tests/data/semgrep/sca.py +92 -0
  282. cartography-0.98.0/tests/data/snipeit/__init__.py +0 -0
  283. cartography-0.98.0/tests/data/snipeit/assets.py +378 -0
  284. cartography-0.98.0/tests/data/snipeit/tenants.py +8 -0
  285. cartography-0.98.0/tests/data/snipeit/users.py +262 -0
  286. cartography-0.98.0/tests/data/test_cli_detectors/bad_shortcut/1.json +14 -0
  287. cartography-0.98.0/tests/data/test_cli_detectors/bad_shortcut/2.json +46 -0
  288. cartography-0.98.0/tests/data/test_cli_detectors/bad_shortcut/shortcut.json +7 -0
  289. cartography-0.98.0/tests/data/test_cli_detectors/bad_shortcut/template.json +6 -0
  290. cartography-0.98.0/tests/data/test_cli_detectors/detector/1.json +14 -0
  291. cartography-0.98.0/tests/data/test_cli_detectors/detector/2.json +46 -0
  292. cartography-0.98.0/tests/data/test_cli_detectors/detector/shortcut.json +6 -0
  293. cartography-0.98.0/tests/data/test_cli_detectors/detector/template.json +6 -0
  294. cartography-0.98.0/tests/data/test_update_detectors/invalid_query/shortcut.json +6 -0
  295. cartography-0.98.0/tests/data/test_update_detectors/invalid_query/template.json +6 -0
  296. cartography-0.98.0/tests/data/test_update_detectors/invalid_template/shortcut.json +5 -0
  297. cartography-0.98.0/tests/data/test_update_detectors/invalid_template/template.json +4 -0
  298. cartography-0.98.0/tests/data/test_update_detectors/test_detector/2019-01-01_00_00_01.json +51 -0
  299. cartography-0.98.0/tests/data/test_update_detectors/test_detector/2019-01-01_00_00_02.json +51 -0
  300. cartography-0.98.0/tests/data/test_update_detectors/test_detector/shortcut.json +6 -0
  301. cartography-0.98.0/tests/data/test_update_detectors/test_detector/template.json +10 -0
  302. cartography-0.98.0/tests/integration/__init__.py +0 -0
  303. cartography-0.98.0/tests/integration/cartography/__init__.py +0 -0
  304. cartography-0.98.0/tests/integration/cartography/client/__init__.py +0 -0
  305. cartography-0.98.0/tests/integration/cartography/client/aws/__init__.py +0 -0
  306. cartography-0.98.0/tests/integration/cartography/client/aws/test_iam.py +63 -0
  307. cartography-0.98.0/tests/integration/cartography/client/test_core.py +145 -0
  308. cartography-0.98.0/tests/integration/cartography/data/__init__.py +0 -0
  309. cartography-0.98.0/tests/integration/cartography/data/jobs/__init__.py +0 -0
  310. cartography-0.98.0/tests/integration/cartography/data/jobs/test_cleanup_jobs.py +132 -0
  311. cartography-0.98.0/tests/integration/cartography/data/jobs/test_syntax.py +54 -0
  312. cartography-0.98.0/tests/integration/cartography/graph/__init__.py +0 -0
  313. cartography-0.98.0/tests/integration/cartography/graph/test_cleanupbuilder.py +253 -0
  314. cartography-0.98.0/tests/integration/cartography/graph/test_querybuilder_case_insensitive.py +29 -0
  315. cartography-0.98.0/tests/integration/cartography/graph/test_querybuilder_fuzzy_case_insensitive.py +29 -0
  316. cartography-0.98.0/tests/integration/cartography/graph/test_querybuilder_labels_and_var_num_rels.py +168 -0
  317. cartography-0.98.0/tests/integration/cartography/graph/test_querybuilder_match_on_multiple_attrs.py +41 -0
  318. cartography-0.98.0/tests/integration/cartography/graph/test_querybuilder_missing_fields_in_data.py +19 -0
  319. cartography-0.98.0/tests/integration/cartography/graph/test_querybuilder_rel_subsets.py +141 -0
  320. cartography-0.98.0/tests/integration/cartography/intel/__init__.py +0 -0
  321. cartography-0.98.0/tests/integration/cartography/intel/aws/__init__.py +0 -0
  322. cartography-0.98.0/tests/integration/cartography/intel/aws/common.py +11 -0
  323. cartography-0.98.0/tests/integration/cartography/intel/aws/ec2/__init__.py +0 -0
  324. cartography-0.98.0/tests/integration/cartography/intel/aws/ec2/test_ec2_auto_scaling_groups.py +112 -0
  325. cartography-0.98.0/tests/integration/cartography/intel/aws/ec2/test_ec2_images.py +69 -0
  326. cartography-0.98.0/tests/integration/cartography/intel/aws/ec2/test_ec2_instances.py +305 -0
  327. cartography-0.98.0/tests/integration/cartography/intel/aws/ec2/test_ec2_key_pairs.py +114 -0
  328. cartography-0.98.0/tests/integration/cartography/intel/aws/ec2/test_ec2_load_balancers.py +247 -0
  329. cartography-0.98.0/tests/integration/cartography/intel/aws/ec2/test_ec2_network_acls.py +133 -0
  330. cartography-0.98.0/tests/integration/cartography/intel/aws/ec2/test_ec2_network_interfaces.py +111 -0
  331. cartography-0.98.0/tests/integration/cartography/intel/aws/ec2/test_ec2_reserved_instances.py +70 -0
  332. cartography-0.98.0/tests/integration/cartography/intel/aws/ec2/test_ec2_security_groups.py +85 -0
  333. cartography-0.98.0/tests/integration/cartography/intel/aws/ec2/test_ec2_snapshots.py +108 -0
  334. cartography-0.98.0/tests/integration/cartography/intel/aws/ec2/test_ec2_subnets.py +73 -0
  335. cartography-0.98.0/tests/integration/cartography/intel/aws/ec2/test_ec2_volumes.py +165 -0
  336. cartography-0.98.0/tests/integration/cartography/intel/aws/ec2/test_ec2_vpc_peerings.py +111 -0
  337. cartography-0.98.0/tests/integration/cartography/intel/aws/ec2/test_elastic_ip_addresses.py +55 -0
  338. cartography-0.98.0/tests/integration/cartography/intel/aws/ec2/test_internet_gateway.py +64 -0
  339. cartography-0.98.0/tests/integration/cartography/intel/aws/ec2/test_launch_templates.py +158 -0
  340. cartography-0.98.0/tests/integration/cartography/intel/aws/ec2/test_tgw.py +53 -0
  341. cartography-0.98.0/tests/integration/cartography/intel/aws/iam/__init__.py +0 -0
  342. cartography-0.98.0/tests/integration/cartography/intel/aws/iam/test_iam.py +200 -0
  343. cartography-0.98.0/tests/integration/cartography/intel/aws/iam/test_role_policies.py +113 -0
  344. cartography-0.98.0/tests/integration/cartography/intel/aws/iam/test_user_policies.py +48 -0
  345. cartography-0.98.0/tests/integration/cartography/intel/aws/inspector/__init__.py +0 -0
  346. cartography-0.98.0/tests/integration/cartography/intel/aws/inspector/test_inspector_sync.py +142 -0
  347. cartography-0.98.0/tests/integration/cartography/intel/aws/test_apigateway.py +260 -0
  348. cartography-0.98.0/tests/integration/cartography/intel/aws/test_config.py +141 -0
  349. cartography-0.98.0/tests/integration/cartography/intel/aws/test_dynamodb.py +193 -0
  350. cartography-0.98.0/tests/integration/cartography/intel/aws/test_ecr.py +215 -0
  351. cartography-0.98.0/tests/integration/cartography/intel/aws/test_ecs.py +303 -0
  352. cartography-0.98.0/tests/integration/cartography/intel/aws/test_eks.py +51 -0
  353. cartography-0.98.0/tests/integration/cartography/intel/aws/test_elasticache.py +49 -0
  354. cartography-0.98.0/tests/integration/cartography/intel/aws/test_emr.py +119 -0
  355. cartography-0.98.0/tests/integration/cartography/intel/aws/test_identitycenter.py +63 -0
  356. cartography-0.98.0/tests/integration/cartography/intel/aws/test_init.py +272 -0
  357. cartography-0.98.0/tests/integration/cartography/intel/aws/test_kms.py +194 -0
  358. cartography-0.98.0/tests/integration/cartography/intel/aws/test_lambda.py +305 -0
  359. cartography-0.98.0/tests/integration/cartography/intel/aws/test_rds.py +136 -0
  360. cartography-0.98.0/tests/integration/cartography/intel/aws/test_redshift.py +151 -0
  361. cartography-0.98.0/tests/integration/cartography/intel/aws/test_resourcegroupstaggingapi.py +90 -0
  362. cartography-0.98.0/tests/integration/cartography/intel/aws/test_route53.py +171 -0
  363. cartography-0.98.0/tests/integration/cartography/intel/aws/test_s3.py +166 -0
  364. cartography-0.98.0/tests/integration/cartography/intel/aws/test_s3_acls.py +51 -0
  365. cartography-0.98.0/tests/integration/cartography/intel/aws/test_secretsmanager.py +66 -0
  366. cartography-0.98.0/tests/integration/cartography/intel/aws/test_securityhub.py +44 -0
  367. cartography-0.98.0/tests/integration/cartography/intel/aws/test_sqs.py +82 -0
  368. cartography-0.98.0/tests/integration/cartography/intel/aws/test_ssm.py +147 -0
  369. cartography-0.98.0/tests/integration/cartography/intel/azure/__init__.py +0 -0
  370. cartography-0.98.0/tests/integration/cartography/intel/azure/test_compute.py +277 -0
  371. cartography-0.98.0/tests/integration/cartography/intel/azure/test_cosmosdb.py +945 -0
  372. cartography-0.98.0/tests/integration/cartography/intel/azure/test_sql.py +751 -0
  373. cartography-0.98.0/tests/integration/cartography/intel/azure/test_storage.py +572 -0
  374. cartography-0.98.0/tests/integration/cartography/intel/bigfix/__init__.py +0 -0
  375. cartography-0.98.0/tests/integration/cartography/intel/bigfix/test_bf_computers.py +45 -0
  376. cartography-0.98.0/tests/integration/cartography/intel/crowdstrike/__init__.py +0 -0
  377. cartography-0.98.0/tests/integration/cartography/intel/crowdstrike/test_endpoints.py +30 -0
  378. cartography-0.98.0/tests/integration/cartography/intel/crowdstrike/test_spotlight.py +43 -0
  379. cartography-0.98.0/tests/integration/cartography/intel/cve/__init__.py +0 -0
  380. cartography-0.98.0/tests/integration/cartography/intel/cve/test_feed.py +122 -0
  381. cartography-0.98.0/tests/integration/cartography/intel/digitalocean/__init__.py +0 -0
  382. cartography-0.98.0/tests/integration/cartography/intel/digitalocean/test_compute.py +56 -0
  383. cartography-0.98.0/tests/integration/cartography/intel/digitalocean/test_management.py +53 -0
  384. cartography-0.98.0/tests/integration/cartography/intel/digitalocean/test_platform.py +44 -0
  385. cartography-0.98.0/tests/integration/cartography/intel/duo/__init__.py +0 -0
  386. cartography-0.98.0/tests/integration/cartography/intel/duo/test_api_host.py +19 -0
  387. cartography-0.98.0/tests/integration/cartography/intel/duo/test_endpoints.py +69 -0
  388. cartography-0.98.0/tests/integration/cartography/intel/duo/test_groups.py +48 -0
  389. cartography-0.98.0/tests/integration/cartography/intel/duo/test_phones.py +67 -0
  390. cartography-0.98.0/tests/integration/cartography/intel/duo/test_tokens.py +63 -0
  391. cartography-0.98.0/tests/integration/cartography/intel/duo/test_users.py +151 -0
  392. cartography-0.98.0/tests/integration/cartography/intel/duo/test_web_authn_credentials.py +64 -0
  393. cartography-0.98.0/tests/integration/cartography/intel/gcp/__init__.py +0 -0
  394. cartography-0.98.0/tests/integration/cartography/intel/gcp/test_compute.py +425 -0
  395. cartography-0.98.0/tests/integration/cartography/intel/gcp/test_crm.py +86 -0
  396. cartography-0.98.0/tests/integration/cartography/intel/gcp/test_dns.py +137 -0
  397. cartography-0.98.0/tests/integration/cartography/intel/gcp/test_gke.py +69 -0
  398. cartography-0.98.0/tests/integration/cartography/intel/gcp/test_storage.py +59 -0
  399. cartography-0.98.0/tests/integration/cartography/intel/github/__init__.py +0 -0
  400. cartography-0.98.0/tests/integration/cartography/intel/github/test_repos.py +363 -0
  401. cartography-0.98.0/tests/integration/cartography/intel/github/test_teams.py +153 -0
  402. cartography-0.98.0/tests/integration/cartography/intel/github/test_users.py +184 -0
  403. cartography-0.98.0/tests/integration/cartography/intel/jamf/__init__.py +0 -0
  404. cartography-0.98.0/tests/integration/cartography/intel/jamf/test_jamf.py +28 -0
  405. cartography-0.98.0/tests/integration/cartography/intel/kandji/__init__.py +0 -0
  406. cartography-0.98.0/tests/integration/cartography/intel/kandji/test_kandji.py +160 -0
  407. cartography-0.98.0/tests/integration/cartography/intel/kubernetes/__init__.py +0 -0
  408. cartography-0.98.0/tests/integration/cartography/intel/kubernetes/test_namespaces.py +34 -0
  409. cartography-0.98.0/tests/integration/cartography/intel/kubernetes/test_pods.py +30 -0
  410. cartography-0.98.0/tests/integration/cartography/intel/kubernetes/test_secrets.py +20 -0
  411. cartography-0.98.0/tests/integration/cartography/intel/kubernetes/test_services.py +32 -0
  412. cartography-0.98.0/tests/integration/cartography/intel/lastpass/__init__.py +0 -0
  413. cartography-0.98.0/tests/integration/cartography/intel/lastpass/test_users.py +92 -0
  414. cartography-0.98.0/tests/integration/cartography/intel/oci/__init__.py +1 -0
  415. cartography-0.98.0/tests/integration/cartography/intel/oci/test_iam.py +67 -0
  416. cartography-0.98.0/tests/integration/cartography/intel/okta/__init__.py +0 -0
  417. cartography-0.98.0/tests/integration/cartography/intel/okta/test_awssaml.py +123 -0
  418. cartography-0.98.0/tests/integration/cartography/intel/okta/test_group.py +129 -0
  419. cartography-0.98.0/tests/integration/cartography/intel/pagerduty/__init__.py +0 -0
  420. cartography-0.98.0/tests/integration/cartography/intel/pagerduty/test_escalation_policies.py +36 -0
  421. cartography-0.98.0/tests/integration/cartography/intel/pagerduty/test_schedules.py +36 -0
  422. cartography-0.98.0/tests/integration/cartography/intel/pagerduty/test_services.py +44 -0
  423. cartography-0.98.0/tests/integration/cartography/intel/pagerduty/test_teams.py +24 -0
  424. cartography-0.98.0/tests/integration/cartography/intel/pagerduty/test_users.py +25 -0
  425. cartography-0.98.0/tests/integration/cartography/intel/pagerduty/test_vendors.py +24 -0
  426. cartography-0.98.0/tests/integration/cartography/intel/semgrep/__init__.py +0 -0
  427. cartography-0.98.0/tests/integration/cartography/intel/semgrep/common.py +70 -0
  428. cartography-0.98.0/tests/integration/cartography/intel/semgrep/test_dependencies.py +200 -0
  429. cartography-0.98.0/tests/integration/cartography/intel/semgrep/test_findings.py +224 -0
  430. cartography-0.98.0/tests/integration/cartography/intel/snipeit/__init__.py +0 -0
  431. cartography-0.98.0/tests/integration/cartography/intel/snipeit/test_snipeit_assets.py +183 -0
  432. cartography-0.98.0/tests/integration/cartography/intel/snipeit/test_snipeit_users.py +159 -0
  433. cartography-0.98.0/tests/integration/cartography/test_cli.py +11 -0
  434. cartography-0.98.0/tests/integration/cartography/test_util.py +64 -0
  435. cartography-0.98.0/tests/integration/conftest.py +17 -0
  436. cartography-0.98.0/tests/integration/driftdetect/__init__.py +0 -0
  437. cartography-0.98.0/tests/integration/driftdetect/test_get_state.py +108 -0
  438. cartography-0.98.0/tests/integration/settings.py +7 -0
  439. cartography-0.98.0/tests/integration/test_basic.py +16 -0
  440. cartography-0.98.0/tests/integration/test_util.py +55 -0
  441. cartography-0.98.0/tests/integration/util.py +61 -0
  442. cartography-0.98.0/tests/unit/__init__.py +0 -0
  443. cartography-0.98.0/tests/unit/cartography/__init__.py +0 -0
  444. cartography-0.98.0/tests/unit/cartography/client/__init__.py +0 -0
  445. cartography-0.98.0/tests/unit/cartography/client/core/test_tx.py +0 -0
  446. cartography-0.98.0/tests/unit/cartography/client/test_core.py +19 -0
  447. cartography-0.98.0/tests/unit/cartography/data/__init__.py +0 -0
  448. cartography-0.98.0/tests/unit/cartography/data/jobs/__init__.py +0 -0
  449. cartography-0.98.0/tests/unit/cartography/data/jobs/test_statement.py +14 -0
  450. cartography-0.98.0/tests/unit/cartography/data/jobs/test_syntax.py +41 -0
  451. cartography-0.98.0/tests/unit/cartography/data/test_graphjob.py +12 -0
  452. cartography-0.98.0/tests/unit/cartography/graph/__init__.py +0 -0
  453. cartography-0.98.0/tests/unit/cartography/graph/helpers.py +22 -0
  454. cartography-0.98.0/tests/unit/cartography/graph/test_cleanupbuilder.py +170 -0
  455. cartography-0.98.0/tests/unit/cartography/graph/test_querybuilder_build_attach_links_excs.py +79 -0
  456. cartography-0.98.0/tests/unit/cartography/graph/test_querybuilder_complex.py +59 -0
  457. cartography-0.98.0/tests/unit/cartography/graph/test_querybuilder_filter_selected_rels.py +17 -0
  458. cartography-0.98.0/tests/unit/cartography/graph/test_querybuilder_indexcreation.py +30 -0
  459. cartography-0.98.0/tests/unit/cartography/graph/test_querybuilder_simple.py +125 -0
  460. cartography-0.98.0/tests/unit/cartography/intel/__init__.py +0 -0
  461. cartography-0.98.0/tests/unit/cartography/intel/aws/__init__.py +0 -0
  462. cartography-0.98.0/tests/unit/cartography/intel/aws/iam/__init__.py +0 -0
  463. cartography-0.98.0/tests/unit/cartography/intel/aws/iam/test_iam.py +118 -0
  464. cartography-0.98.0/tests/unit/cartography/intel/aws/iam/test_principal_policies.py +61 -0
  465. cartography-0.98.0/tests/unit/cartography/intel/aws/test_apigateway.py +17 -0
  466. cartography-0.98.0/tests/unit/cartography/intel/aws/test_identitycenter.py +66 -0
  467. cartography-0.98.0/tests/unit/cartography/intel/aws/test_inspector.py +100 -0
  468. cartography-0.98.0/tests/unit/cartography/intel/aws/test_permission_relationships.py +466 -0
  469. cartography-0.98.0/tests/unit/cartography/intel/aws/test_resourcegroupstaggingapi.py +72 -0
  470. cartography-0.98.0/tests/unit/cartography/intel/aws/test_util.py +19 -0
  471. cartography-0.98.0/tests/unit/cartography/intel/cve/test_feed.py +219 -0
  472. cartography-0.98.0/tests/unit/cartography/intel/gcp/__init__.py +0 -0
  473. cartography-0.98.0/tests/unit/cartography/intel/gcp/test_compute.py +65 -0
  474. cartography-0.98.0/tests/unit/cartography/intel/gcp/test_storage.py +13 -0
  475. cartography-0.98.0/tests/unit/cartography/intel/github/__init__.py +0 -0
  476. cartography-0.98.0/tests/unit/cartography/intel/github/test_github.py +94 -0
  477. cartography-0.98.0/tests/unit/cartography/intel/github/test_repos.py +37 -0
  478. cartography-0.98.0/tests/unit/cartography/intel/github/test_teams.py +665 -0
  479. cartography-0.98.0/tests/unit/cartography/intel/gsuite/__init__.py +0 -0
  480. cartography-0.98.0/tests/unit/cartography/intel/gsuite/test_api.py +201 -0
  481. cartography-0.98.0/tests/unit/cartography/intel/oci/__init__.py +1 -0
  482. cartography-0.98.0/tests/unit/cartography/intel/oci/test_iam.py +129 -0
  483. cartography-0.98.0/tests/unit/cartography/intel/oci/test_organizations.py +27 -0
  484. cartography-0.98.0/tests/unit/cartography/intel/oci/test_utils.py +31 -0
  485. cartography-0.98.0/tests/unit/cartography/intel/okta/__init__.py +0 -0
  486. cartography-0.98.0/tests/unit/cartography/intel/okta/test_admin_roles.py +28 -0
  487. cartography-0.98.0/tests/unit/cartography/intel/okta/test_application.py +119 -0
  488. cartography-0.98.0/tests/unit/cartography/intel/okta/test_awssaml.py +80 -0
  489. cartography-0.98.0/tests/unit/cartography/intel/okta/test_factor.py +55 -0
  490. cartography-0.98.0/tests/unit/cartography/intel/okta/test_group.py +95 -0
  491. cartography-0.98.0/tests/unit/cartography/intel/okta/test_trusted_origin.py +33 -0
  492. cartography-0.98.0/tests/unit/cartography/intel/okta/test_user.py +169 -0
  493. cartography-0.98.0/tests/unit/cartography/intel/okta/test_utils.py +35 -0
  494. cartography-0.98.0/tests/unit/cartography/test_sync.py +39 -0
  495. cartography-0.98.0/tests/unit/cartography/test_util.py +166 -0
  496. cartography-0.98.0/tests/unit/driftdetect/__init__.py +0 -0
  497. cartography-0.98.0/tests/unit/driftdetect/test_cli.py +90 -0
  498. cartography-0.98.0/tests/unit/driftdetect/test_detect_drift.py +39 -0
  499. cartography-0.98.0/tests/unit/driftdetect/test_detector.py +188 -0
  500. cartography-0.98.0/tests/unit/driftdetect/test_shortcuts.py +135 -0
  501. cartography-0.98.0/tests/unit/test_hello_world.py +2 -0
  502. cartography-0.97.1/PKG-INFO +0 -53
  503. cartography-0.97.1/cartography/client/core/tx.py +0 -254
  504. cartography-0.97.1/cartography/data/indexes.cypher +0 -409
  505. cartography-0.97.1/cartography/data/jobs/analysis/aws_ec2_asset_exposure.json +0 -34
  506. cartography-0.97.1/cartography/data/jobs/analysis/gcp_compute_asset_inet_exposure.json +0 -41
  507. cartography-0.97.1/cartography/data/jobs/cleanup/github_org_and_users_cleanup.json +0 -28
  508. cartography-0.97.1/cartography/graph/cleanupbuilder.py +0 -163
  509. cartography-0.97.1/cartography/intel/aws/ec2/instances.py +0 -341
  510. cartography-0.97.1/cartography/intel/aws/ec2/key_pairs.py +0 -71
  511. cartography-0.97.1/cartography/intel/aws/resourcegroupstaggingapi.py +0 -245
  512. cartography-0.97.1/cartography/intel/gcp/__init__.py +0 -357
  513. cartography-0.97.1/cartography/intel/github/users.py +0 -248
  514. cartography-0.97.1/cartography/intel/gsuite/__init__.py +0 -111
  515. cartography-0.97.1/cartography/intel/gsuite/api.py +0 -284
  516. cartography-0.97.1/cartography/models/aws/ec2/keypairs.py +0 -64
  517. cartography-0.97.1/cartography/util.py +0 -445
  518. cartography-0.97.1/cartography.egg-info/PKG-INFO +0 -53
  519. cartography-0.97.1/cartography.egg-info/SOURCES.txt +0 -365
  520. cartography-0.97.1/cartography.egg-info/requires.txt +0 -34
  521. cartography-0.97.1/setup.py +0 -90
  522. {cartography-0.97.1 → cartography-0.98.0}/LICENSE +0 -0
  523. {cartography-0.97.1 → cartography-0.98.0}/README.md +0 -0
  524. {cartography-0.97.1 → cartography-0.98.0}/cartography/__init__.py +0 -0
  525. {cartography-0.97.1 → cartography-0.98.0}/cartography/__main__.py +0 -0
  526. {cartography-0.97.1 → cartography-0.98.0}/cartography/cli.py +0 -0
  527. {cartography-0.97.1 → cartography-0.98.0}/cartography/client/__init__.py +0 -0
  528. {cartography-0.97.1 → cartography-0.98.0}/cartography/client/aws/__init__.py +0 -0
  529. {cartography-0.97.1 → cartography-0.98.0}/cartography/client/aws/iam.py +0 -0
  530. {cartography-0.97.1 → cartography-0.98.0}/cartography/client/core/__init__.py +0 -0
  531. {cartography-0.97.1 → cartography-0.98.0}/cartography/config.py +0 -0
  532. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/__init__.py +0 -0
  533. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/__init__.py +0 -0
  534. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/analysis/__init__.py +0 -0
  535. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/analysis/aws_ec2_iaminstance.json +0 -0
  536. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/analysis/aws_ec2_iaminstanceprofile.json +0 -0
  537. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/analysis/aws_ec2_keypair_analysis.json +0 -0
  538. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/analysis/aws_eks_asset_exposure.json +0 -0
  539. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/analysis/aws_foreign_accounts.json +0 -0
  540. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/analysis/aws_lambda_ecr.json +0 -0
  541. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/analysis/aws_s3acl_analysis.json +0 -0
  542. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/analysis/gcp_gke_asset_exposure.json +0 -0
  543. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/analysis/gcp_gke_basic_auth.json +0 -0
  544. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/analysis/gsuite_human_link.json +0 -0
  545. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/__init__.py +0 -0
  546. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_account_cleanup.json +0 -0
  547. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_apigateway_details.json +0 -0
  548. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_dns_cleanup.json +0 -0
  549. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_account_access_key_cleanup.json +0 -0
  550. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_apigateway_cleanup.json +0 -0
  551. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_config_cleanup.json +0 -0
  552. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_ec2_launch_configurations_cleanup.json +0 -0
  553. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_ec2_security_groupinfo_cleanup.json +0 -0
  554. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_ecr_cleanup.json +0 -0
  555. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_ecs_cleanup.json +0 -0
  556. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_elastic_ip_addresses_cleanup.json +0 -0
  557. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_elasticache_cleanup.json +0 -0
  558. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_es_cleanup.json +0 -0
  559. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_groups_cleanup.json +0 -0
  560. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_groups_membership_cleanup.json +0 -0
  561. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_groups_policy_cleanup.json +0 -0
  562. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_identity_center_cleanup.json +0 -0
  563. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_internet_gateways_cleanup.json +0 -0
  564. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_kms_cleanup.json +0 -0
  565. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_lambda_cleanup.json +0 -0
  566. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_principals_cleanup.json +0 -0
  567. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_rds_clusters_cleanup.json +0 -0
  568. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_rds_instances_cleanup.json +0 -0
  569. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_rds_snapshots_cleanup.json +0 -0
  570. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_redshift_clusters_cleanup.json +0 -0
  571. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_reserved_instances_cleanup.json +0 -0
  572. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_roles_cleanup.json +0 -0
  573. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_roles_policy_cleanup.json +0 -0
  574. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_s3_acl_cleanup.json +0 -0
  575. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_s3_buckets_cleanup.json +0 -0
  576. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_secrets_cleanup.json +0 -0
  577. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_securityhub_cleanup.json +0 -0
  578. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_snapshots_cleanup.json +0 -0
  579. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_sqs_queues_cleanup.json +0 -0
  580. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_tags_cleanup.json +0 -0
  581. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_tgw_cleanup.json +0 -0
  582. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_users_cleanup.json +0 -0
  583. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_vpc_cleanup.json +0 -0
  584. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_import_vpc_peering_cleanup.json +0 -0
  585. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_ingest_ec2_auto_scaling_groups_cleanup.json +0 -0
  586. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_ingest_load_balancers_cleanup.json +0 -0
  587. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_ingest_load_balancers_v2_cleanup.json +0 -0
  588. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_ingest_subnets_cleanup.json +0 -0
  589. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_kms_details.json +0 -0
  590. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_post_ingestion_principals_cleanup.json +0 -0
  591. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/aws_s3_details.json +0 -0
  592. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/azure_cosmosdb_cassandra_keyspace_cleanup.json +0 -0
  593. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/azure_cosmosdb_cors_details.json +0 -0
  594. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/azure_cosmosdb_mongodb_database_cleanup.json +0 -0
  595. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/azure_cosmosdb_sql_database_cleanup.json +0 -0
  596. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/azure_cosmosdb_table_resources_cleanup.json +0 -0
  597. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/azure_database_account_cleanup.json +0 -0
  598. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/azure_import_disks_cleanup.json +0 -0
  599. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/azure_import_snapshots_cleanup.json +0 -0
  600. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/azure_import_virtual_machines_cleanup.json +0 -0
  601. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/azure_sql_server_cleanup.json +0 -0
  602. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/azure_storage_account_cleanup.json +0 -0
  603. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/azure_subscriptions_cleanup.json +0 -0
  604. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/azure_tenant_cleanup.json +0 -0
  605. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/crowdstrike_import_cleanup.json +0 -0
  606. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/digitalocean_droplet_cleanup.json +0 -0
  607. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/digitalocean_project_cleanup.json +0 -0
  608. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/gcp_compute_firewall_cleanup.json +0 -0
  609. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/gcp_compute_forwarding_rules_cleanup.json +0 -0
  610. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/gcp_compute_instance_cleanup.json +0 -0
  611. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/gcp_compute_vpc_cleanup.json +0 -0
  612. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/gcp_compute_vpc_subnet_cleanup.json +0 -0
  613. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/gcp_crm_folder_cleanup.json +0 -0
  614. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/gcp_crm_organization_cleanup.json +0 -0
  615. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/gcp_crm_project_cleanup.json +0 -0
  616. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/gcp_dns_cleanup.json +0 -0
  617. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/gcp_gke_cluster_cleanup.json +0 -0
  618. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/gcp_storage_bucket_cleanup.json +0 -0
  619. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/github_repos_cleanup.json +0 -0
  620. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/gsuite_ingest_groups_cleanup.json +0 -0
  621. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/gsuite_ingest_users_cleanup.json +0 -0
  622. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/jamf_import_computers_cleanup.json +0 -0
  623. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/kubernetes_import_cleanup.json +0 -0
  624. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/oci_import_compartments_cleanup.json +0 -0
  625. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/oci_import_groups_cleanup.json +0 -0
  626. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/oci_import_groups_membership_cleanup.json +0 -0
  627. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/oci_import_policies_cleanup.json +0 -0
  628. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/oci_import_users_cleanup.json +0 -0
  629. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/oci_tenancy_cleanup.json +0 -0
  630. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/okta_groups_cleanup.json +0 -0
  631. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/okta_import_cleanup.json +0 -0
  632. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/cleanup/pagerduty_import_cleanup.json +0 -0
  633. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/scoped_analysis/__init__.py +0 -0
  634. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/jobs/scoped_analysis/semgrep_sca_risk_analysis.json +0 -0
  635. {cartography-0.97.1 → cartography-0.98.0}/cartography/data/permission_relationships.yaml +0 -0
  636. {cartography-0.97.1 → cartography-0.98.0}/cartography/driftdetect/__init__.py +0 -0
  637. {cartography-0.97.1 → cartography-0.98.0}/cartography/driftdetect/__main__.py +0 -0
  638. {cartography-0.97.1 → cartography-0.98.0}/cartography/driftdetect/add_shortcut.py +0 -0
  639. {cartography-0.97.1 → cartography-0.98.0}/cartography/driftdetect/cli.py +0 -0
  640. {cartography-0.97.1 → cartography-0.98.0}/cartography/driftdetect/config.py +0 -0
  641. {cartography-0.97.1 → cartography-0.98.0}/cartography/driftdetect/detect_deviations.py +0 -0
  642. {cartography-0.97.1 → cartography-0.98.0}/cartography/driftdetect/get_states.py +0 -0
  643. {cartography-0.97.1 → cartography-0.98.0}/cartography/driftdetect/model.py +0 -0
  644. {cartography-0.97.1 → cartography-0.98.0}/cartography/driftdetect/reporter.py +0 -0
  645. {cartography-0.97.1 → cartography-0.98.0}/cartography/driftdetect/serializers.py +0 -0
  646. {cartography-0.97.1 → cartography-0.98.0}/cartography/driftdetect/shortcut.py +0 -0
  647. {cartography-0.97.1 → cartography-0.98.0}/cartography/driftdetect/storage.py +0 -0
  648. {cartography-0.97.1 → cartography-0.98.0}/cartography/driftdetect/util.py +0 -0
  649. {cartography-0.97.1 → cartography-0.98.0}/cartography/graph/__init__.py +0 -0
  650. {cartography-0.97.1 → cartography-0.98.0}/cartography/graph/context.py +0 -0
  651. {cartography-0.97.1 → cartography-0.98.0}/cartography/graph/job.py +0 -0
  652. {cartography-0.97.1 → cartography-0.98.0}/cartography/graph/querybuilder.py +0 -0
  653. {cartography-0.97.1 → cartography-0.98.0}/cartography/graph/statement.py +0 -0
  654. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/__init__.py +0 -0
  655. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/analysis.py +0 -0
  656. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/__init__.py +0 -0
  657. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/apigateway.py +0 -0
  658. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/config.py +0 -0
  659. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/dynamodb.py +0 -0
  660. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/ec2/__init__.py +0 -0
  661. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/ec2/auto_scaling_groups.py +0 -0
  662. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/ec2/elastic_ip_addresses.py +0 -0
  663. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/ec2/images.py +0 -0
  664. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/ec2/internet_gateways.py +0 -0
  665. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/ec2/launch_templates.py +0 -0
  666. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/ec2/load_balancer_v2s.py +0 -0
  667. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/ec2/load_balancers.py +0 -0
  668. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/ec2/network_acls.py +0 -0
  669. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/ec2/network_interfaces.py +0 -0
  670. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/ec2/reserved_instances.py +0 -0
  671. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/ec2/security_groups.py +0 -0
  672. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/ec2/snapshots.py +0 -0
  673. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/ec2/subnets.py +0 -0
  674. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/ec2/tgw.py +0 -0
  675. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/ec2/util.py +0 -0
  676. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/ec2/volumes.py +0 -0
  677. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/ec2/vpc.py +0 -0
  678. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/ec2/vpc_peerings.py +0 -0
  679. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/ecr.py +0 -0
  680. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/ecs.py +0 -0
  681. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/eks.py +0 -0
  682. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/elasticache.py +0 -0
  683. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/elasticsearch.py +0 -0
  684. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/emr.py +0 -0
  685. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/iam.py +0 -0
  686. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/identitycenter.py +0 -0
  687. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/inspector.py +0 -0
  688. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/kms.py +0 -0
  689. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/lambda_function.py +0 -0
  690. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/organizations.py +0 -0
  691. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/permission_relationships.py +0 -0
  692. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/rds.py +0 -0
  693. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/redshift.py +0 -0
  694. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/resources.py +0 -0
  695. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/route53.py +0 -0
  696. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/s3.py +0 -0
  697. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/secretsmanager.py +0 -0
  698. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/securityhub.py +0 -0
  699. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/sqs.py +0 -0
  700. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/ssm.py +0 -0
  701. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/util/__init__.py +0 -0
  702. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/util/arns.py +0 -0
  703. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/aws/util/common.py +0 -0
  704. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/azure/__init__.py +0 -0
  705. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/azure/compute.py +0 -0
  706. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/azure/cosmosdb.py +0 -0
  707. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/azure/sql.py +0 -0
  708. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/azure/storage.py +0 -0
  709. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/azure/subscription.py +0 -0
  710. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/azure/tenant.py +0 -0
  711. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/azure/util/__init__.py +0 -0
  712. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/azure/util/credentials.py +0 -0
  713. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/bigfix/__init__.py +0 -0
  714. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/bigfix/computers.py +0 -0
  715. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/create_indexes.py +0 -0
  716. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/crowdstrike/__init__.py +0 -0
  717. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/crowdstrike/endpoints.py +0 -0
  718. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/crowdstrike/spotlight.py +0 -0
  719. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/crowdstrike/util.py +0 -0
  720. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/cve/__init__.py +0 -0
  721. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/cve/feed.py +0 -0
  722. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/digitalocean/__init__.py +0 -0
  723. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/digitalocean/compute.py +0 -0
  724. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/digitalocean/management.py +0 -0
  725. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/digitalocean/platform.py +0 -0
  726. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/dns.py +0 -0
  727. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/duo/__init__.py +0 -0
  728. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/duo/api_host.py +0 -0
  729. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/duo/endpoints.py +0 -0
  730. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/duo/groups.py +0 -0
  731. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/duo/phones.py +0 -0
  732. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/duo/tokens.py +0 -0
  733. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/duo/users.py +0 -0
  734. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/duo/web_authn_credentials.py +0 -0
  735. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/gcp/compute.py +0 -0
  736. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/gcp/crm.py +0 -0
  737. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/gcp/dns.py +0 -0
  738. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/gcp/gke.py +0 -0
  739. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/gcp/storage.py +0 -0
  740. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/github/__init__.py +0 -0
  741. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/github/repos.py +0 -0
  742. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/github/teams.py +0 -0
  743. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/github/util.py +0 -0
  744. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/jamf/__init__.py +0 -0
  745. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/jamf/computers.py +0 -0
  746. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/jamf/util.py +0 -0
  747. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/kandji/__init__.py +0 -0
  748. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/kandji/devices.py +0 -0
  749. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/kubernetes/__init__.py +0 -0
  750. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/kubernetes/namespaces.py +0 -0
  751. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/kubernetes/pods.py +0 -0
  752. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/kubernetes/secrets.py +0 -0
  753. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/kubernetes/services.py +0 -0
  754. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/kubernetes/util.py +0 -0
  755. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/lastpass/__init__.py +0 -0
  756. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/lastpass/users.py +0 -0
  757. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/oci/__init__.py +0 -0
  758. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/oci/iam.py +0 -0
  759. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/oci/organizations.py +0 -0
  760. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/oci/utils.py +0 -0
  761. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/okta/__init__.py +0 -0
  762. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/okta/applications.py +0 -0
  763. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/okta/awssaml.py +0 -0
  764. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/okta/factors.py +0 -0
  765. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/okta/groups.py +0 -0
  766. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/okta/organization.py +0 -0
  767. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/okta/origins.py +0 -0
  768. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/okta/roles.py +0 -0
  769. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/okta/sync_state.py +0 -0
  770. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/okta/users.py +0 -0
  771. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/okta/utils.py +0 -0
  772. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/pagerduty/__init__.py +0 -0
  773. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/pagerduty/escalation_policies.py +0 -0
  774. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/pagerduty/schedules.py +0 -0
  775. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/pagerduty/services.py +0 -0
  776. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/pagerduty/teams.py +0 -0
  777. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/pagerduty/users.py +0 -0
  778. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/pagerduty/vendors.py +0 -0
  779. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/semgrep/__init__.py +0 -0
  780. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/semgrep/dependencies.py +0 -0
  781. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/semgrep/deployment.py +0 -0
  782. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/semgrep/findings.py +0 -0
  783. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/snipeit/__init__.py +0 -0
  784. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/snipeit/asset.py +0 -0
  785. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/snipeit/user.py +0 -0
  786. {cartography-0.97.1 → cartography-0.98.0}/cartography/intel/snipeit/util.py +0 -0
  787. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/__init__.py +0 -0
  788. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/__init__.py +0 -0
  789. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/dynamodb/__init__.py +0 -0
  790. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/dynamodb/gsi.py +0 -0
  791. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/dynamodb/tables.py +0 -0
  792. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/ec2/__init__.py +0 -0
  793. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/ec2/auto_scaling_groups.py +0 -0
  794. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/ec2/images.py +0 -0
  795. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/ec2/instances.py +0 -0
  796. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/ec2/launch_configurations.py +0 -0
  797. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/ec2/launch_template_versions.py +0 -0
  798. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/ec2/launch_templates.py +0 -0
  799. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/ec2/loadbalancerv2.py +0 -0
  800. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/ec2/network_acl_rules.py +0 -0
  801. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/ec2/network_acls.py +0 -0
  802. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/ec2/networkinterface_instance.py +0 -0
  803. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/ec2/networkinterfaces.py +0 -0
  804. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/ec2/privateip_networkinterface.py +0 -0
  805. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/ec2/reservations.py +0 -0
  806. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/ec2/securitygroup_instance.py +0 -0
  807. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/ec2/securitygroup_networkinterface.py +0 -0
  808. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/ec2/subnet_instance.py +0 -0
  809. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/ec2/subnet_networkinterface.py +0 -0
  810. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/ec2/volumes.py +0 -0
  811. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/eks/__init__.py +0 -0
  812. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/eks/clusters.py +0 -0
  813. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/emr.py +0 -0
  814. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/identitycenter/__init__.py +0 -0
  815. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/identitycenter/awsidentitycenter.py +0 -0
  816. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/identitycenter/awspermissionset.py +0 -0
  817. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/identitycenter/awsssouser.py +0 -0
  818. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/inspector/__init__.py +0 -0
  819. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/inspector/findings.py +0 -0
  820. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/inspector/packages.py +0 -0
  821. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/ssm/__init__.py +0 -0
  822. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/ssm/instance_information.py +0 -0
  823. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/aws/ssm/instance_patch.py +0 -0
  824. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/bigfix/__init__.py +0 -0
  825. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/bigfix/bigfix_computer.py +0 -0
  826. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/bigfix/bigfix_root.py +0 -0
  827. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/core/__init__.py +0 -0
  828. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/core/common.py +0 -0
  829. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/core/nodes.py +0 -0
  830. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/core/relationships.py +0 -0
  831. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/cve/__init__.py +0 -0
  832. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/cve/cve.py +0 -0
  833. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/cve/cve_feed.py +0 -0
  834. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/duo/__init__.py +0 -0
  835. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/duo/api_host.py +0 -0
  836. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/duo/endpoint.py +0 -0
  837. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/duo/group.py +0 -0
  838. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/duo/phone.py +0 -0
  839. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/duo/token.py +0 -0
  840. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/duo/user.py +0 -0
  841. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/duo/web_authn_credential.py +0 -0
  842. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/github/__init__.py +0 -0
  843. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/github/orgs.py +0 -0
  844. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/github/teams.py +0 -0
  845. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/github/users.py +0 -0
  846. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/kandji/__init__.py +0 -0
  847. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/kandji/device.py +0 -0
  848. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/kandji/tenant.py +0 -0
  849. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/lastpass/__init__.py +0 -0
  850. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/lastpass/tenant.py +0 -0
  851. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/lastpass/user.py +0 -0
  852. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/semgrep/__init__.py +0 -0
  853. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/semgrep/dependencies.py +0 -0
  854. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/semgrep/deployment.py +0 -0
  855. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/semgrep/findings.py +0 -0
  856. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/semgrep/locations.py +0 -0
  857. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/snipeit/__init__.py +0 -0
  858. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/snipeit/asset.py +0 -0
  859. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/snipeit/tenant.py +0 -0
  860. {cartography-0.97.1 → cartography-0.98.0}/cartography/models/snipeit/user.py +0 -0
  861. {cartography-0.97.1 → cartography-0.98.0}/cartography/py.typed +0 -0
  862. {cartography-0.97.1 → cartography-0.98.0}/cartography/stats.py +0 -0
  863. {cartography-0.97.1 → cartography-0.98.0}/cartography/sync.py +0 -0
  864. {cartography-0.97.1 → cartography-0.98.0}/cartography.egg-info/dependency_links.txt +0 -0
  865. {cartography-0.97.1 → cartography-0.98.0}/cartography.egg-info/entry_points.txt +0 -0
  866. {cartography-0.97.1 → cartography-0.98.0}/cartography.egg-info/top_level.txt +0 -0
  867. {cartography-0.97.1 → cartography-0.98.0}/setup.cfg +0 -0
@@ -0,0 +1,5 @@
1
+ # This .gitignore is a placeholder so that we can store .cache/ in github.
2
+ # We are including a pre-created .cache in Github so that when
3
+ # we run docker-compose in WSL2 during dev linting, WSL2 does not attempt
4
+ # to create .cache/ with root as the owner. The contents of .cache
5
+ # should never be pushed back upstream to the main cartography repo.
@@ -0,0 +1,6 @@
1
+ build/
2
+ *.egg-info/
3
+ venv/
4
+ .compose
5
+ .cache
6
+ .local
@@ -0,0 +1,4 @@
1
+ # This file is for docker-compose dev use so that mounting
2
+ # Neo4j volumes doesn't fail with permissions errors.
3
+ GID=1000
4
+ UID=1000
@@ -0,0 +1,47 @@
1
+ ---
2
+ name: Issue report/feature request
3
+ about: Create a report to help us improve
4
+ title: ''
5
+ labels: ''
6
+ assignees: ''
7
+
8
+ ---
9
+
10
+ **Feature request template**
11
+
12
+ *Title*: *One line description*
13
+
14
+ *Description*:
15
+ > Describe your idea. Please be detailed. If a feature request, please
16
+ describe the desired behavior, what scenario it enables, and how it
17
+ would be used.
18
+
19
+ [optional *Relevant Links*:]
20
+ > Any extra documentation required to understand the issue.
21
+
22
+
23
+
24
+ **Bug Template**
25
+
26
+ *Title*: *One line description*
27
+
28
+ *Description*:
29
+ > What issue is being seen? Describe what should be happening instead of the bug, for example: Cartography should not crash, the expected value isn't returned, the data schema is wrong, etc.
30
+
31
+ *To Reproduce*:
32
+ > Steps to reproduce the behavior. Provide all data and inputs required to reproduce the issue.
33
+
34
+ *Logs*:
35
+ > If applicable, copy and paste your console log with the failing stack trace.
36
+
37
+ *Screenshots*:
38
+ > If applicable, add screenshots to help explain your problem.
39
+
40
+ *Please complete the following information:*:
41
+ > - Cartography release version or commit hash [e.g. 0.12.0 or 95e8e11913e2a44a4d4682506d8364a638ceac69]
42
+ > - Python version: [e.g. 3.10.0]
43
+ > - OS (feel free to omit this if you don't think it's relevant to your issue): [e.g. Ubuntu bla bla, OSX bla bla]
44
+
45
+
46
+ *Additional context*:
47
+ > Add any other context about the problem here.
@@ -0,0 +1,23 @@
1
+ ### Summary
2
+ > Describe your changes.
3
+
4
+
5
+
6
+ ### Related issues or links
7
+ > Include links to relevant issues or other pages.
8
+
9
+ - https://github.com/lyft/cartography/issues/...
10
+
11
+
12
+ ### Checklist
13
+
14
+ Provide proof that this works (this makes reviews move faster). Please perform one or more of the following:
15
+ - [ ] Update/add unit or integration tests.
16
+ - [ ] Include a screenshot showing what the graph looked like before and after your changes.
17
+ - [ ] Include console log trace showing what happened before and after your changes.
18
+
19
+ If you are changing a node or relationship:
20
+ - [ ] Update the [schema](https://github.com/lyft/cartography/tree/master/docs/root/modules) and [readme](https://github.com/lyft/cartography/blob/master/docs/schema/README.md).
21
+
22
+ If you are implementing a new intel module:
23
+ - [ ] Use the NodeSchema [data model](https://cartography-cncf.github.io/cartography/dev/writing-intel-modules.html#defining-a-node).
@@ -0,0 +1,17 @@
1
+ # Number of days of inactivity before an issue becomes stale
2
+ daysUntilStale: 14
3
+ # Number of days of inactivity before a stale issue is closed
4
+ daysUntilClose: 21
5
+ # Issues with these labels will never be considered stale
6
+ exemptLabels:
7
+ - keep fresh
8
+ # Label to use when marking an issue as stale
9
+ staleLabel: stale
10
+ # Comment to post when marking an issue as stale. Set to `false` to disable
11
+ markComment: >
12
+ This issue has been automatically marked as stale because it has not had
13
+ recent activity. It will be closed if no further activity occurs.
14
+ # Comment to post when closing a stale issue. Set to `false` to disable
15
+ closeComment: >
16
+ This issue has been automatically closed for inactivity. If you still wish to
17
+ make these changes, please open a new change or reopen this one.
@@ -0,0 +1,64 @@
1
+ ---
2
+ # https://github.com/marketplace/actions/ossf-scorecard-action
3
+ name: Scorecards supply-chain security
4
+ on:
5
+ # Only the default branch is supported.
6
+ branch_protection_rule:
7
+ schedule:
8
+ # Weekly on Saturdays.
9
+ - cron: '30 1 * * 6'
10
+ push:
11
+ branches: [ main, master ]
12
+
13
+ # Declare default permissions as read only.
14
+ permissions: read-all
15
+
16
+ jobs:
17
+ analysis:
18
+ name: Scorecards analysis
19
+ runs-on: ubuntu-latest
20
+ permissions:
21
+ # Needed to upload the results to code-scanning dashboard.
22
+ security-events: write
23
+ # Used to receive a badge. (Upcoming feature)
24
+ id-token: write
25
+ actions: read
26
+ contents: read
27
+
28
+ steps:
29
+ - name: "Checkout code"
30
+ uses: actions/checkout@a12a3943b4bdde767164f792f33f40b04645d846 # tag=v3.0.0
31
+ with:
32
+ persist-credentials: false
33
+
34
+ - name: "Run analysis"
35
+ uses: ossf/scorecard-action@3e15ea8318eee9b333819ec77a36aca8d39df13e # tag=v1.1.1
36
+ with:
37
+ results_file: results.sarif
38
+ results_format: sarif
39
+ # (Optional) Read-only PAT token. Uncomment the `repo_token` line below if:
40
+ # - you want to enable the Branch-Protection check on a *public* repository, or
41
+ # - you are installing Scorecards on a *private* repository
42
+ # To create the PAT, follow the steps in https://github.com/ossf/scorecard-action#authentication-with-pat.
43
+ # repo_token: ${{ secrets.SCORECARD_READ_TOKEN }}
44
+
45
+ # Publish the results for public repositories to enable scorecard badges. For more details, see
46
+ # https://github.com/ossf/scorecard-action#publishing-results.
47
+ # For private repositories, `publish_results` will automatically be set to `false`, regardless
48
+ # of the value entered here.
49
+ publish_results: true
50
+
51
+ # Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF
52
+ # format to the repository Actions tab.
53
+ - name: "Upload artifact"
54
+ uses: actions/upload-artifact@6673cd052c4cd6fcf4b4e6e60ea986c889389535 # tag=v3.0.0
55
+ with:
56
+ name: SARIF file
57
+ path: results.sarif
58
+ retention-days: 5
59
+
60
+ # Upload the results to GitHub's code scanning dashboard.
61
+ - name: "Upload to code-scanning"
62
+ uses: github/codeql-action/upload-sarif@5f532563584d71fdef14ee64d17bafb34f751ce5 # tag=v1.0.26
63
+ with:
64
+ sarif_file: results.sarif
@@ -0,0 +1,92 @@
1
+ name: Publish Docker 🐳 images 📦 to GitHub Container Registry
2
+
3
+ on:
4
+ release:
5
+ types: [created]
6
+ workflow_dispatch: {}
7
+
8
+ jobs:
9
+
10
+ build-and-publish-to-pypi-and-ghcr:
11
+ # Explicitly grant the `secrets.GITHUB_TOKEN` permissions.
12
+ permissions:
13
+ # Grant the ability to write to GitHub Packages (push Docker images to
14
+ # GitHub Container Registry).
15
+ packages: write
16
+ name: Build and publish Python 🐍 distributions 📦 to PyPI, and Docker 🐳 images 📦 to GitHub Container Registry
17
+ runs-on: ubuntu-latest
18
+ steps:
19
+ # 1. Publish to PyPI
20
+ - uses: actions/checkout@v2
21
+ - name: Set up Python 3.10
22
+ uses: actions/setup-python@v1
23
+ with:
24
+ python-version: "3.10"
25
+
26
+ - name: Install pypa/build
27
+ run: >-
28
+ python -m
29
+ pip install
30
+ build
31
+ --user
32
+
33
+ - name: Build a binary wheel and a source tarball
34
+ run: >-
35
+ python -m
36
+ build
37
+ --sdist
38
+ --wheel
39
+ --outdir dist/
40
+ .
41
+
42
+ - name: Publish distribution 📦 to PyPI
43
+ if: startsWith(github.ref, 'refs/tags')
44
+ uses: pypa/gh-action-pypi-publish@release/v1
45
+ with:
46
+ user: __token__
47
+ password: ${{ secrets.PYPI_API_TOKEN }}
48
+ skip_existing: true
49
+
50
+ # 2. Publish to GHCR
51
+ - uses: actions/checkout@v2
52
+ - name: Extract metadata (tags, labels) for Docker
53
+ id: meta
54
+ uses: docker/metadata-action@v4
55
+ with:
56
+ images: ghcr.io/${{ github.repository }}
57
+
58
+ - name: Set up Docker Buildx
59
+ uses: docker/setup-buildx-action@v2
60
+
61
+ - name: Login to GitHub Container Registry
62
+ uses: docker/login-action@v2
63
+ with:
64
+ registry: ghcr.io
65
+ # This is the user that triggered the Workflow. In this case, it will
66
+ # either be the user whom created the Release or manually triggered
67
+ # the workflow_dispatch.
68
+ username: ${{ github.actor }}
69
+ # `secrets.GITHUB_TOKEN` is a secret that's automatically generated by
70
+ # GitHub Actions at the start of a workflow run to identify the job.
71
+ # This is used to authenticate against GitHub Container Registry.
72
+ # See https://docs.github.com/en/actions/security-guides/automatic-token-authentication#about-the-github_token-secret
73
+ # for more detailed information.
74
+ password: ${{ secrets.GITHUB_TOKEN }}
75
+
76
+ # Get the cartography version from the GitHub release event metadata and sleep to wait for PyPI to finish publishing
77
+ - name: Extract version and sleep
78
+ id: version
79
+ run: |
80
+ echo "VERSION=${{ github.event.release.tag_name }}" >> $GITHUB_ENV
81
+ sleep 10
82
+
83
+ - name: Build and push
84
+ uses: docker/build-push-action@v3
85
+ with:
86
+ file: Dockerfile
87
+ context: .
88
+ push: true # push the image to ghcr
89
+ tags: ${{ steps.meta.outputs.tags }}
90
+ labels: ${{ steps.meta.outputs.labels }}
91
+ # e.g. '==0.98.0'
92
+ build-args: VERSION_SPECIFIER===${{ env.VERSION }}
@@ -0,0 +1,109 @@
1
+ # Based on: https://github.com/rkdarst/sphinx-actions-test/blob/master/.github/workflows/sphinx-build.yml
2
+
3
+ name: sphinx
4
+ on:
5
+ push:
6
+ branches:
7
+ - 'master'
8
+
9
+ env:
10
+ DEFAULT_BRANCH: "master"
11
+
12
+ jobs:
13
+ build-and-deploy:
14
+ name: Build and gh-pages
15
+ runs-on: ubuntu-latest
16
+ steps:
17
+ # https://github.com/marketplace/actions/checkout
18
+ - uses: actions/checkout@v2
19
+ with:
20
+ fetch-depth: 0
21
+ lfs: true
22
+ # https://github.com/marketplace/actions/setup-python
23
+ # ^-- This gives info on matrix testing.
24
+ - name: Install Python
25
+ uses: actions/setup-python@v2
26
+ with:
27
+ python-version: "3.10"
28
+ # https://docs.github.com/en/actions/guides/building-and-testing-python#caching-dependencies
29
+ # ^-- How to set up caching for pip on Ubuntu
30
+ - name: Cache pip
31
+ uses: actions/cache@v2
32
+ with:
33
+ path: ~/.cache/pip
34
+ key: ${{ runner.os }}-pip-${{ hashFiles('requirements.txt') }}
35
+ restore-keys: |
36
+ ${{ runner.os }}-pip-
37
+ ${{ runner.os }}-
38
+
39
+ # Build
40
+ - name: Build Sphinx docs
41
+ run: |
42
+ ./docs/build.sh
43
+
44
+ # Clone and set up the old gh-pages branch
45
+ - name: Clone old gh-pages
46
+ if: ${{ github.event_name == 'push' }}
47
+ run: |
48
+ set -x
49
+ git fetch
50
+ ( git branch gh-pages remotes/origin/gh-pages && git clone . --branch=gh-pages _gh-pages/ ) || mkdir _gh-pages
51
+ rm -rf _gh-pages/.git/
52
+ mkdir -p _gh-pages/branch/
53
+ # If a push and default branch, copy build to _gh-pages/ as the "main"
54
+ # deployment.
55
+ - name: Copy new build (default branch)
56
+ if: |
57
+ contains(github.event_name, 'push') &&
58
+ contains(github.ref, env.DEFAULT_BRANCH)
59
+ run: |
60
+ set -x
61
+ # Delete everything under _gh-pages/ that is from the
62
+ # primary branch deployment. Eicludes the other branches
63
+ # _gh-pages/branch-* paths, and not including
64
+ # _gh-pages itself.
65
+ find _gh-pages/ -mindepth 1 ! -path '_gh-pages/branch*' -delete
66
+ rsync -a generated/docs/ _gh-pages/
67
+ # If a push and not on default branch, then copy the build to
68
+ # _gh-pages/branch/$brname (transforming '/' into '--')
69
+ - name: Copy new build (branch)
70
+ if: |
71
+ contains(github.event_name, 'push') &&
72
+ !contains(github.ref, env.DEFAULT_BRANCH)
73
+ run: |
74
+ set -x
75
+ brname="${{github.ref}}"
76
+ brname="${brname##refs/heads/}"
77
+ brdir=${brname//\//--} # replace '/' with '--'
78
+ rm -rf _gh-pages/branch/${brdir}
79
+ rsync -a generated/docs/ _gh-pages/branch/${brdir}
80
+ # Go through each branch in _gh-pages/branch/, if it's not a
81
+ # ref, then delete it.
82
+ - name: Delete old feature branches
83
+ if: ${{ github.event_name == 'push' }}
84
+ run: |
85
+ set -x
86
+ for brdir in `ls _gh-pages/branch/` ; do
87
+ brname=${brdir//--/\/} # replace '--' with '/'
88
+ if ! git show-ref remotes/origin/$brname ; then
89
+ echo "Removing $brdir"
90
+ rm -r _gh-pages/branch/$brdir/
91
+ fi
92
+ done
93
+
94
+ # Add the .nojekyll file
95
+ - name: nojekyll
96
+ if: ${{ github.event_name == 'push' }}
97
+ run: |
98
+ touch _gh-pages/.nojekyll
99
+
100
+ # Deploy
101
+ # https://github.com/peaceiris/actions-gh-pages
102
+ - name: Deploy
103
+ uses: peaceiris/actions-gh-pages@v3.8.0
104
+ if: ${{ github.event_name == 'push' }}
105
+ with:
106
+ publish_branch: gh-pages
107
+ github_token: ${{ secrets.GITHUB_TOKEN }}
108
+ publish_dir: _gh-pages/
109
+ force_orphan: true
@@ -0,0 +1,114 @@
1
+ name: Test Suite
2
+ on:
3
+ pull_request:
4
+ branches:
5
+ - master
6
+ push:
7
+ branches:
8
+ - master
9
+
10
+ # Explicitly grant the `secrets.GITHUB_TOKEN` no permissions.
11
+ permissions: {}
12
+
13
+ jobs:
14
+ linter:
15
+ runs-on: ubuntu-latest
16
+ steps:
17
+ - uses: actions/checkout@v3
18
+ - uses: actions/setup-python@v3
19
+ with:
20
+ python-version: "3.10"
21
+ - uses: pre-commit/action@v3.0.0
22
+ with:
23
+ extra_args: --all-files --show-diff-on-failure
24
+
25
+ unit-and-integration-tests:
26
+ runs-on: ubuntu-latest
27
+ steps:
28
+ - uses: actions/checkout@v2
29
+ # https://stackoverflow.com/a/64592785
30
+ - name: neo4j 4 instance setup
31
+ run: |
32
+ docker run --detach \
33
+ --name neo4j-4 \
34
+ --env NEO4J_AUTH=none \
35
+ --publish 7474:7474 \
36
+ --publish 7473:7473 \
37
+ --publish 7687:7687 \
38
+ neo4j:4.4-community
39
+ - uses: actions/setup-python@v2
40
+ with:
41
+ python-version: "3.10"
42
+ # Cache our pip dir for efficiency; see https://medium.com/ai2-blog/python-caching-in-github-actions-e9452698e98d.
43
+ - uses: actions/cache@v2
44
+ with:
45
+ path: ~/.cache/pip
46
+ key: ${{ hashFiles('setup.py') }}-${{ hashFiles('pyproject.toml') }}
47
+ - name: Install cartography
48
+ run: |
49
+ pip install -e .
50
+ pip install .[dev]
51
+ - name: Wait for neo4j 4 to be ready
52
+ timeout-minutes: 1
53
+ run: (docker logs -f neo4j-4 & ) | grep -q Started
54
+ - name: make test_unit
55
+ run: make test_unit
56
+ - name: make test_integration
57
+ run: make test_integration
58
+
59
+ unit-and-integration-tests-neo4j5:
60
+ runs-on: ubuntu-latest
61
+ steps:
62
+ - uses: actions/checkout@v2
63
+ # https://stackoverflow.com/a/64592785
64
+ - name: neo4j 5 setup
65
+ run: |
66
+ docker run --detach \
67
+ --name neo4j-5 \
68
+ --env NEO4J_AUTH=none \
69
+ --publish 7474:7474 \
70
+ --publish 7473:7473 \
71
+ --publish 7687:7687 \
72
+ neo4j:5
73
+ - uses: actions/setup-python@v2
74
+ with:
75
+ python-version: "3.10"
76
+ # Cache our pip dir for efficiency; see https://medium.com/ai2-blog/python-caching-in-github-actions-e9452698e98d.
77
+ - uses: actions/cache@v2
78
+ with:
79
+ path: ~/.cache/pip
80
+ key: ${{ hashFiles('setup.py') }}-${{ hashFiles('pyproject.toml') }}
81
+ - name: Install cartography
82
+ run: |
83
+ pip install -e .
84
+ pip install .[dev]
85
+ - name: Wait for neo4j 5 to be ready
86
+ timeout-minutes: 1
87
+ run: (docker logs -f neo4j-5 & ) | grep -q Started
88
+ - name: make test_unit
89
+ run: make test_unit
90
+ - name: make test_integration
91
+ run: make test_integration
92
+
93
+ # Test that the docker image builds successfully on each commit
94
+ build-docker-image:
95
+ runs-on: ubuntu-latest
96
+ steps:
97
+ - uses: actions/checkout@v2
98
+ - name: Extract metadata (tags, labels) for Docker
99
+ id: meta
100
+ uses: docker/metadata-action@v4
101
+ with:
102
+ images: ghcr.io/${{ github.repository }}
103
+
104
+ - name: Set up Docker Buildx
105
+ uses: docker/setup-buildx-action@v2
106
+
107
+ - name: Build
108
+ uses: docker/build-push-action@v3
109
+ with:
110
+ file: Dockerfile
111
+ push: false # only build the image, don't push it anywhere
112
+ context: .
113
+ tags: ${{ steps.meta.outputs.tags }}
114
+ labels: ${{ steps.meta.outputs.labels }}
@@ -0,0 +1,21 @@
1
+ *~
2
+ *.pyc
3
+ *.pyo
4
+ *.pyt
5
+ *.pytc
6
+ *.egg-info
7
+ .*.swp
8
+ .DS_Store
9
+ /venv*
10
+ .venv/
11
+ .cache/
12
+ build/
13
+ .idea/
14
+ .coverage
15
+ .mypy_cache
16
+ *.vscode
17
+ .compose
18
+ generated
19
+ dist/
20
+ .local
21
+ cartography/_version.py
@@ -0,0 +1,48 @@
1
+ default_language_version:
2
+ # force all unspecified python hooks to run python3
3
+ python: python3
4
+ repos:
5
+ - repo: https://github.com/pre-commit/pre-commit-hooks
6
+ rev: v5.0.0
7
+ hooks:
8
+ - id: check-docstring-first
9
+ - id: check-executables-have-shebangs
10
+ - id: check-merge-conflict
11
+ - id: check-vcs-permalinks
12
+ - id: check-yaml
13
+ - id: debug-statements
14
+ - id: end-of-file-fixer
15
+ - id: trailing-whitespace
16
+ - repo: https://github.com/pycqa/flake8
17
+ rev: 7.1.1
18
+ hooks:
19
+ - id: flake8
20
+ - repo: https://github.com/hhatto/autopep8
21
+ rev: v2.3.1
22
+ hooks:
23
+ - id: autopep8
24
+ # disable a few rewrites which will cause autopep8 to reflow
25
+ args: [--in-place, '--ignore=E265,E501,W504']
26
+ - repo: https://github.com/asottile/pyupgrade
27
+ rev: v3.19.0
28
+ hooks:
29
+ - id: pyupgrade
30
+ args: [--py36-plus]
31
+ - repo: https://github.com/asottile/add-trailing-comma
32
+ rev: v3.1.0
33
+ hooks:
34
+ - id: add-trailing-comma
35
+ args: [--py36-plus]
36
+ - repo: https://github.com/asottile/reorder_python_imports
37
+ rev: v3.14.0
38
+ hooks:
39
+ - id: reorder-python-imports
40
+ args: [--py3-plus]
41
+ - repo: https://github.com/pre-commit/mirrors-mypy
42
+ rev: v1.13.0
43
+ hooks:
44
+ - id: mypy
45
+ additional_dependencies:
46
+ - types-requests
47
+ - types-PyYAML
48
+ - types-python-dateutil
@@ -0,0 +1,2 @@
1
+ This project is governed by [Lyft's code of conduct](https://github.com/lyft/code-of-conduct).
2
+ All contributors and participants agree to abide by its terms.
@@ -0,0 +1,25 @@
1
+ # This is a thin distribution of the cartography software.
2
+ # It is published at ghcr.io.
3
+ FROM python:3.10-slim
4
+
5
+ # Default to ''. Overridden with a specific version specifier e.g. '==0.98.0' by build args or from GitHub actions.
6
+ ARG VERSION_SPECIFIER
7
+
8
+ # the UID and GID to run cartography as
9
+ # (https://github.com/hexops/dockerfile#do-not-use-a-uid-below-10000).
10
+ ARG uid=10001
11
+ ARG gid=10001
12
+
13
+ WORKDIR /var/cartography
14
+ ENV HOME=/var/cartography
15
+
16
+ # Install cartography at the given version specifier. Can be ''.
17
+ RUN pip install cartography${VERSION_SPECIFIER}
18
+
19
+ USER ${uid}:${gid}
20
+
21
+ # verify that the binary at least runs
22
+ RUN cartography -h
23
+
24
+ ENTRYPOINT ["cartography"]
25
+ CMD ["-h"]
@@ -0,0 +1,16 @@
1
+ # Process for becoming a maintainer
2
+ Generally, express interest. This usually includes things like:
3
+ - Contributing 2+ PRs to Cartography.
4
+ - Regularly participating in discussion on GitHub, on Slack, or in our live video meetings.
5
+
6
+ # Maintainer responsibilities
7
+ - Hang out on Slack; delayed response is perfectly acceptable
8
+ - Triage GitHub issues and perform pull request reviews for other maintainers and the community.
9
+ - Deeply understand the project's best practices and development patterns.
10
+
11
+ # When does a maintainer lose maintainer status
12
+ - If a maintainer is no longer interested or cannot perform the maintainer duties listed above, they should volunteer to be moved to emeritus status.
13
+ - If we do not hear from you in over a year, we may remove you from maintainer status without notice.
14
+
15
+ # Conflict resolution
16
+ We handle conflicts on a case-by-case basis. In general, let's talk it out (Slack, video call, etc). For larger issues we may need to involve more people to come to a decision.
@@ -0,0 +1,32 @@
1
+ See https://github.com/lyft/cartography/#contributing for general contribution guidelines.
2
+
3
+ ## Maintainers
4
+
5
+ List of community members who have shown they are committed to Cartography's continued development and are active in pull request reviews and community conversations.
6
+
7
+ - Alex Chantavy (https://github.com/achantavy): General catch-all
8
+ - Ramon Petgrave (https://github.com/ramonpetgrave64): General catch-all
9
+ - Jérémy Chapeau (https://github.com/resilience-jychp): Plugin development
10
+ - Ryan Lane (https://github.com/ryan-lane): Plugin development, general engineering best practices
11
+ - Marco Lancini (https://github.com/marco-lancini): Deployment and use-cases
12
+ - Kedar Ghule (https://github.com/kedarghule): Plugin development
13
+ - Purusottam Mupunu (https://https://github.com/mpurusottamc): Deployment and use-cases
14
+ - Chandan Chowdhury (https://github.com/chandanchowdhury): Plugin development
15
+
16
+
17
+ ## Friends of Cartography
18
+
19
+ Not maintainers but are continually active in discussions and offer subject matter expertise or community advocacy (e.g. writing blog posts)
20
+
21
+ - Daniel D'Agostino (https://github.com/danielsaporo): Deployment and use-cases
22
+ - Ashley Lowde (https://github.com/alowde-ps): Deployment and use-cases
23
+
24
+
25
+ ## Emeritus maintainers
26
+
27
+ Not actively involved in reviews, but Cartography would not exist without the contributions of these key community members.
28
+
29
+ - Sacha Faust (https://github.com/sachafaust)
30
+ - Andrew Johnson (https://github.com/SecPrez)
31
+ - Taya Steere (https://github.com/tmsteere)
32
+ - Evan Davis (https://github.com/ecdavis)
@@ -0,0 +1,10 @@
1
+ test: test_lint test_unit test_integration
2
+
3
+ test_lint:
4
+ pre-commit run --all-files --show-diff-on-failure
5
+
6
+ test_unit:
7
+ pytest -vvv --cov-report term-missing --cov=cartography tests/unit
8
+
9
+ test_integration:
10
+ pytest -vvv --cov-report term-missing --cov=cartography tests/integration