archsight 0.2.6 → 0.2.8

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.
Files changed (60) hide show
  1. checksums.yaml +4 -4
  2. data/chart/archsight/Chart.yaml +1 -1
  3. data/chart/archsight/templates/deployment.yaml +7 -0
  4. data/chart/archsight/values.yaml +13 -0
  5. data/lib/archsight/import/handlers/rest_api_index.rb +16 -5
  6. data/lib/archsight/version.rb +1 -1
  7. data/lib/archsight/web/public/vue/{ApiDocsPage-DHSCaHEn.js → ApiDocsPage-DgouiX10.js} +1 -1
  8. data/lib/archsight/web/public/vue/DocPage-4OHaac0-.js +1 -0
  9. data/lib/archsight/web/public/vue/EditorPage-TVDkBDgE.js +35 -0
  10. data/lib/archsight/web/public/vue/{ErrorPage-C4JutrYc.js → ErrorPage-B4eyf6e2.js} +1 -1
  11. data/lib/archsight/web/public/vue/{GraphView-Bqlbt6dK.js → GraphView-C-kr_6N2.js} +1 -1
  12. data/lib/archsight/web/public/vue/InstanceRouter-CcBQw1-H.js +2 -0
  13. data/lib/archsight/web/public/vue/{KindList-CPDaNron.js → KindList-X3h6vyQ6.js} +1 -1
  14. data/lib/archsight/web/public/vue/{ResourceList-B5w9yiyS.js → ResourceList-iVEBqeMm.js} +1 -1
  15. data/lib/archsight/web/public/vue/{SearchResults-FpkhdBFu.js → SearchResults-BqxFIMjh.js} +1 -1
  16. data/lib/archsight/web/public/vue/architecture-TIHT7OUA-DDp7mpgs.js +1 -0
  17. data/lib/archsight/web/public/vue/cynefin-VYW2F7L2-I5kWUuYI.js +1 -0
  18. data/lib/archsight/web/public/vue/eventmodeling-45OFAUF4-Cu4FiAuE.js +1 -0
  19. data/lib/archsight/web/public/vue/gitGraph-TEB2WS4Q-D6aFdcYh.js +1 -0
  20. data/lib/archsight/web/public/vue/graphviz-SXWTgZH5.js +3 -0
  21. data/lib/archsight/web/public/vue/index-jMbNuijl.js +3 -0
  22. data/lib/archsight/web/public/vue/info-DKCQHKI2-CbP0Vldj.js +1 -0
  23. data/lib/archsight/web/public/vue/katex-CXMH3UgJ.js +257 -0
  24. data/lib/archsight/web/public/vue/mermaid-MUrMUmp1.js +3279 -0
  25. data/lib/archsight/web/public/vue/packet-7NZHBO7P-CddRksf4.js +1 -0
  26. data/lib/archsight/web/public/vue/pie-RZYD4A2V-BQWf9okf.js +1 -0
  27. data/lib/archsight/web/public/vue/radar-I7S5WNFK-ClQV9YJE.js +1 -0
  28. data/lib/archsight/web/public/vue/railroad-3IZDKUUU-CTKh0Vox.js +1 -0
  29. data/lib/archsight/web/public/vue/railroad-abnf-AHOZXSZD-B14KoGsf.js +1 -0
  30. data/lib/archsight/web/public/vue/railroad-ebnf-EBAXGLYW-x56ODILn.js +1 -0
  31. data/lib/archsight/web/public/vue/railroad-peg-LSFZ7HO6-HZ2VrHj9.js +1 -0
  32. data/lib/archsight/web/public/vue/{rolldown-runtime-QTnfLwEv.js → rolldown-runtime-hePW80VL.js} +1 -1
  33. data/lib/archsight/web/public/vue/treeView-QDETBFTQ-C5pxMh00.js +1 -0
  34. data/lib/archsight/web/public/vue/treemap-6X3UGDF4-BBjiFYFJ.js +1 -0
  35. data/lib/archsight/web/public/vue/{useGraphviz-EKSrE4q_.js → useGraphviz-BhDHewrr.js} +2 -2
  36. data/lib/archsight/web/public/vue/useHighlight-CLpP3akD.js +10 -0
  37. data/lib/archsight/web/public/vue/{useMermaid-CIZxhy_r.js → useMermaid-BiVpKDxX.js} +2 -2
  38. data/lib/archsight/web/public/vue/usePanZoom-GQYikC2Z.js +11 -0
  39. data/lib/archsight/web/public/vue/wardley-OPB4EBWU-ChwCbRUZ.js +1 -0
  40. data/lib/archsight/web/public/vue.html +3 -3
  41. metadata +34 -29
  42. data/lib/archsight/web/public/vue/DocPage-DszOPlFy.js +0 -1
  43. data/lib/archsight/web/public/vue/EditorPage-DsiuZ7fg.js +0 -35
  44. data/lib/archsight/web/public/vue/InstanceRouter-D8SEY2eu.js +0 -2
  45. data/lib/archsight/web/public/vue/architecture-7EHR7CIX-DpNNjAIc.js +0 -1
  46. data/lib/archsight/web/public/vue/eventmodeling-FCH6USID-CiThxoWl.js +0 -1
  47. data/lib/archsight/web/public/vue/gitGraph-WXDBUCRP-BODMGpAm.js +0 -1
  48. data/lib/archsight/web/public/vue/graphviz-09t3o0af.js +0 -13
  49. data/lib/archsight/web/public/vue/index-T1YqCmM1.js +0 -2
  50. data/lib/archsight/web/public/vue/info-J43DQDTF-fLq04sri.js +0 -1
  51. data/lib/archsight/web/public/vue/katex-5qHlIbPR.js +0 -261
  52. data/lib/archsight/web/public/vue/mermaid-DYyHQk7x.js +0 -3093
  53. data/lib/archsight/web/public/vue/packet-YPE3B663-DoY1fbqu.js +0 -1
  54. data/lib/archsight/web/public/vue/pie-LRSECV5Y-C7ZQVwRe.js +0 -1
  55. data/lib/archsight/web/public/vue/radar-GUYGQ44K-CRtY5oqf.js +0 -1
  56. data/lib/archsight/web/public/vue/treeView-BLDUP644-Csx2WLLh.js +0 -1
  57. data/lib/archsight/web/public/vue/treemap-LRROVOQU-CfEnRbTx.js +0 -1
  58. data/lib/archsight/web/public/vue/useHighlight-BcVbGyrK.js +0 -10
  59. data/lib/archsight/web/public/vue/usePanZoom-C2slpyY9.js +0 -11
  60. data/lib/archsight/web/public/vue/wardley-L42UT6IY-97oUvxhz.js +0 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a648a562357c7e62c60c815f87e7ef83dbae73b545c0ee3f1ef21e983e705728
4
- data.tar.gz: b2770c7f3d769a8fc45c9a3d8dfe947454a2054bccf0075206865b1a4b8dbbf5
3
+ metadata.gz: 03da27eff05412536d72c6e2036c787cde324c05ad84ace8f054c15589b1507f
4
+ data.tar.gz: 2e09404c869bbbb07e9f12f48a0d73fa390222ca50e12b272a9608eec319b78d
5
5
  SHA512:
6
- metadata.gz: 1cb930e83f808190b15c487226b84db7152981497f0a81746ee96bebd3e10c3b717f2be3765f95e0c42f07725d51cdfdb7bfcfda972b0dd0b76d7108dd99d4d9
7
- data.tar.gz: a7384b1d52afbe08c5108d0fba87d7c5407eb70c52a7bf6db782ff66036b224637405c49bf105b6afb46f815e5daa3c6cb5a191f69d14834638998a757fa185b
6
+ metadata.gz: fe1962993bdd6dca5af552044f8bdec012b286d54a54338f3fc5704ef9247701813f0132683f2dd8462be66f2d45cb4ba1e5e7381c6ac7977fb6994cc6e0c41c
7
+ data.tar.gz: 94d83e2b0f58073f4286e24bbfd27ecf7b84f7e83d86ed259b2af4e8b0069969fd218ca614d5ba682478db0b858bef48256c1ef707ad02c9d0c0fbaafa3357a1
@@ -2,5 +2,5 @@ apiVersion: v2
2
2
  name: archsight
3
3
  description: A Helm chart for ArchSight
4
4
  type: application
5
- version: 0.2.0
5
+ version: 0.3.0
6
6
  appVersion: "0.2.3"
@@ -63,6 +63,13 @@ spec:
63
63
  - name: http
64
64
  containerPort: 4567
65
65
  protocol: TCP
66
+ startupProbe:
67
+ httpGet:
68
+ path: /
69
+ port: http
70
+ periodSeconds: {{ .Values.startupProbe.periodSeconds }}
71
+ failureThreshold: {{ .Values.startupProbe.failureThreshold }}
72
+ timeoutSeconds: {{ .Values.startupProbe.timeoutSeconds }}
66
73
  livenessProbe:
67
74
  httpGet:
68
75
  path: /
@@ -53,6 +53,19 @@ ingress:
53
53
  # hosts:
54
54
  # - chart-example.local
55
55
 
56
+ # Startup probe configuration.
57
+ # Protects slow application startup: the full resource dataset is loaded and
58
+ # verified synchronously before the HTTP server starts accepting connections,
59
+ # which can take minutes for large datasets (10k+ resources). While this probe
60
+ # is failing, the livenessProbe/readinessProbe below are not evaluated, so the
61
+ # container won't be killed or marked unready mid-startup.
62
+ # Default budget: periodSeconds * failureThreshold = 10 minutes. Increase
63
+ # failureThreshold for larger datasets.
64
+ startupProbe:
65
+ periodSeconds: 30
66
+ failureThreshold: 20
67
+ timeoutSeconds: 3
68
+
56
69
  resources: {}
57
70
  # limits:
58
71
  # cpu: 100m
@@ -18,6 +18,10 @@ require_relative "../registry"
18
18
  # import/config/skipVisibility - Comma-separated visibilities to skip (e.g., "public-preview")
19
19
  # import/config/childCacheTime - Cache time for generated child imports (e.g., "1h", "30m")
20
20
  #
21
+ # APIs whose "gate" value isn't a recognized status (General-Availability,
22
+ # Early-Access, Development, or their GA/EA/DEV aliases) are skipped, since
23
+ # they can't be represented by the ApplicationInterface status annotation.
24
+ #
21
25
  # Output:
22
26
  # Generates Import:RestApi:* resources for each API in the index
23
27
  #
@@ -36,6 +40,8 @@ require_relative "../registry"
36
40
  # ]
37
41
  # }
38
42
  class Archsight::Import::Handlers::RestApiIndex < Archsight::Import::Handler
43
+ VALID_GATES = %w[General-Availability Early-Access Development GA EA DEV].freeze
44
+
39
45
  def execute
40
46
  @index_url = config("indexUrl")
41
47
  raise "Missing required config: indexUrl" unless @index_url
@@ -55,10 +61,10 @@ class Archsight::Import::Handlers::RestApiIndex < Archsight::Import::Handler
55
61
  return
56
62
  end
57
63
 
58
- # Filter APIs by visibility
64
+ # Filter APIs by visibility and gate
59
65
  original_count = apis.size
60
66
  apis = filter_apis(apis)
61
- progress.update("Filtered to #{apis.size} APIs (skipped #{original_count - apis.size} by visibility)") if apis.size < original_count
67
+ progress.update("Filtered to #{apis.size} APIs (skipped #{original_count - apis.size} by visibility/gate)") if apis.size < original_count
62
68
 
63
69
  # Generate child imports
64
70
  progress.update("Generating #{apis.size} import resources")
@@ -107,14 +113,19 @@ class Archsight::Import::Handlers::RestApiIndex < Archsight::Import::Handler
107
113
  end
108
114
 
109
115
  def filter_apis(apis)
110
- return apis if @skip_visibilities.empty?
111
-
112
116
  apis.reject do |api|
113
117
  visibility = api["visibility"]&.downcase
114
- @skip_visibilities.any? { |skip| visibility == skip.downcase }
118
+ skipped_by_visibility = @skip_visibilities.any? { |skip| visibility == skip.downcase }
119
+ skipped_by_visibility || !valid_gate?(api["gate"])
115
120
  end
116
121
  end
117
122
 
123
+ def valid_gate?(gate)
124
+ return true if gate.nil? # falls back to "GA" default in generate_api_imports
125
+
126
+ VALID_GATES.any? { |valid| gate.casecmp?(valid) }
127
+ end
128
+
118
129
  def generate_api_imports(apis)
119
130
  yaml_documents = apis.map do |api|
120
131
  api_name = api["name"]
@@ -4,5 +4,5 @@
4
4
  # Do not edit manually.
5
5
 
6
6
  module Archsight
7
- VERSION = "0.2.6"
7
+ VERSION = "0.2.8"
8
8
  end
@@ -1 +1 @@
1
- import{B as e,N as t,S as n,T as r,U as i,g as a,j as o,t as s,w as c,y as l,z as u}from"./index-T1YqCmM1.js";var d={class:`api-docs-page`},f={key:0,class:`pico-color-red-500`},p=s({__name:`ApiDocsPage`,setup(s){let p=a(),m=u(null),h=u(null);function g(e){return new Promise((t,n)=>{if(window.Redoc)return t();let r=document.createElement(`script`);r.src=e,r.onload=t,r.onerror=()=>n(Error(`Failed to load ReDoc`)),document.head.appendChild(r)})}return o(async()=>{try{await g(`https://cdn.redoc.ly/redoc/latest/bundles/redoc.standalone.js`),window.Redoc.init(`/api/v1/openapi.yaml`,{},m.value)}catch(e){h.value=e.message}}),(a,o)=>(t(),r(`div`,d,[n(`a`,{href:`#`,class:`back-link`,onClick:o[0]||=l(t=>e(p).back(),[`prevent`])},`← Back`),h.value?(t(),r(`div`,f,i(h.value),1)):c(``,!0),n(`div`,{ref_key:`container`,ref:m},null,512)]))}},[[`__scopeId`,`data-v-0e03906d`]]);export{p as default};
1
+ import{B as e,N as t,S as n,T as r,U as i,g as a,j as o,t as s,w as c,y as l,z as u}from"./index-jMbNuijl.js";var d={class:`api-docs-page`},f={key:0,class:`pico-color-red-500`},p=s({__name:`ApiDocsPage`,setup(s){let p=a(),m=u(null),h=u(null);function g(e){return new Promise((t,n)=>{if(window.Redoc)return t();let r=document.createElement(`script`);r.src=e,r.onload=t,r.onerror=()=>n(Error(`Failed to load ReDoc`)),document.head.appendChild(r)})}return o(async()=>{try{await g(`https://cdn.redoc.ly/redoc/latest/bundles/redoc.standalone.js`),window.Redoc.init(`/api/v1/openapi.yaml`,{},m.value)}catch(e){h.value=e.message}}),(a,o)=>(t(),r(`div`,d,[n(`a`,{href:`#`,class:`back-link`,onClick:o[0]||=l(t=>e(p).back(),[`prevent`])},`← Back`),h.value?(t(),r(`div`,f,i(h.value),1)):c(``,!0),n(`div`,{ref_key:`container`,ref:m},null,512)]))}},[[`__scopeId`,`data-v-0e03906d`]]);export{p as default};
@@ -0,0 +1 @@
1
+ import{I as e,N as t,S as n,T as r,a as i,k as a,z as o}from"./index-jMbNuijl.js";import{t as s}from"./useHighlight-CLpP3akD.js";import{t as c}from"./useMermaid-BiVpKDxX.js";var l=[`innerHTML`],u={key:1},d={__name:`DocPage`,props:{filename:String},setup(d){let f=d,p=o(``),m=o(!0),h=o(null);async function g(){m.value=!0;let e=await i(f.filename);p.value=e||`<p>Documentation not found.</p>`,m.value=!1,await a(),h.value&&(s(h.value),c(h.value))}return e(()=>f.filename,g,{immediate:!0}),(e,i)=>m.value?(t(),r(`article`,u,[...i[0]||=[n(`p`,null,`Loading...`,-1)]])):(t(),r(`div`,{key:0,ref_key:`articleEl`,ref:h,innerHTML:p.value},null,8,l))}};export{d as default};