@backstage-community/plugin-jfrog-artifactory 1.8.2

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.
package/CHANGELOG.md ADDED
@@ -0,0 +1,557 @@
1
+ ### Dependencies
2
+
3
+ ## 1.8.2
4
+
5
+ ### Patch Changes
6
+
7
+ - a696ba2: The [jfrog-artifactory](https://github.com/janus-idp/backstage-plugins/tree/main/plugins/jfrog-artifactory) plugin from the [janus-idp/backstage-plugins](https://github.com/janus-idp/backstage-plugins) repository was migrated to the [community plugins](https://github.com/backstage/community-plugins/tree/main), based on commit 0c7c7f4a.
8
+ The migration was performed by following the manual migration steps outlined in the [Community Plugins CONTRIBUTING guide](https://github.com/backstage/community-plugins/blob/main/CONTRIBUTING.md#migrating-a-plugin).
9
+
10
+ - **@janus-idp/shared-react:** upgraded to 2.11.1
11
+ - **@janus-idp/cli:** upgraded to 1.15.0
12
+
13
+ ### Dependencies
14
+
15
+ - **@janus-idp/shared-react:** upgraded to 2.11.0
16
+ - **@janus-idp/cli:** upgraded to 1.14.0
17
+
18
+ ### Dependencies
19
+
20
+ - **@janus-idp/cli:** upgraded to 1.13.2
21
+
22
+ ### Dependencies
23
+
24
+ - **@janus-idp/shared-react:** upgraded to 2.10.3
25
+
26
+ ### Dependencies
27
+
28
+ - **@janus-idp/shared-react:** upgraded to 2.10.2
29
+
30
+ ### Dependencies
31
+
32
+ - **@janus-idp/shared-react:** upgraded to 2.10.1
33
+
34
+ ### Dependencies
35
+
36
+ - **@janus-idp/cli:** upgraded to 1.13.1
37
+
38
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.7.3](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.7.2...@janus-idp/backstage-plugin-jfrog-artifactory@1.7.3) (2024-08-02)
39
+
40
+ ### Dependencies
41
+
42
+ - **@janus-idp/shared-react:** upgraded to 2.10.0
43
+
44
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.7.2](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.7.1...@janus-idp/backstage-plugin-jfrog-artifactory@1.7.2) (2024-08-02)
45
+
46
+ ### Dependencies
47
+
48
+ - **@janus-idp/shared-react:** upgraded to 2.10.0
49
+
50
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.7.1](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.7.0...@janus-idp/backstage-plugin-jfrog-artifactory@1.7.1) (2024-08-02)
51
+
52
+ ### Dependencies
53
+
54
+ - **@janus-idp/shared-react:** upgraded to 2.10.0
55
+
56
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.7.0](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.6.0...@janus-idp/backstage-plugin-jfrog-artifactory@1.7.0) (2024-07-26)
57
+
58
+ ### Features
59
+
60
+ - **deps:** update to backstage 1.29 ([#1900](https://github.com/janus-idp/backstage-plugins/issues/1900)) ([f53677f](https://github.com/janus-idp/backstage-plugins/commit/f53677fb02d6df43a9de98c43a9f101a6db76802))
61
+
62
+ ### Dependencies
63
+
64
+ - **@janus-idp/shared-react:** upgraded to 2.9.0
65
+
66
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.6.0](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.5.1...@janus-idp/backstage-plugin-jfrog-artifactory@1.6.0) (2024-07-24)
67
+
68
+ ### Features
69
+
70
+ - **deps:** update to backstage 1.28 ([#1891](https://github.com/janus-idp/backstage-plugins/issues/1891)) ([1ba1108](https://github.com/janus-idp/backstage-plugins/commit/1ba11088e0de60e90d138944267b83600dc446e5))
71
+
72
+ ### Dependencies
73
+
74
+ - **@janus-idp/shared-react:** upgraded to 2.8.0
75
+
76
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.5.1](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.5.0...@janus-idp/backstage-plugin-jfrog-artifactory@1.5.1) (2024-06-19)
77
+
78
+ ### Dependencies
79
+
80
+ - **@janus-idp/shared-react:** upgraded to 2.7.1
81
+ - **@janus-idp/cli:** upgraded to 1.11.1
82
+
83
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.5.0](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.4.12...@janus-idp/backstage-plugin-jfrog-artifactory@1.5.0) (2024-06-13)
84
+
85
+ ### Features
86
+
87
+ - **deps:** update to backstage 1.27 ([#1683](https://github.com/janus-idp/backstage-plugins/issues/1683)) ([a14869c](https://github.com/janus-idp/backstage-plugins/commit/a14869c3f4177049cb8d6552b36c3ffd17e7997d))
88
+
89
+ ### Dependencies
90
+
91
+ - **@janus-idp/shared-react:** upgraded to 2.7.0
92
+ - **@janus-idp/cli:** upgraded to 1.11.0
93
+
94
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.4.12](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.4.11...@janus-idp/backstage-plugin-jfrog-artifactory@1.4.12) (2024-06-13)
95
+
96
+ ### Dependencies
97
+
98
+ - **@janus-idp/cli:** upgraded to 1.10.1
99
+
100
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.4.11](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.4.10...@janus-idp/backstage-plugin-jfrog-artifactory@1.4.11) (2024-06-05)
101
+
102
+ ### Dependencies
103
+
104
+ - **@janus-idp/cli:** upgraded to 1.10.0
105
+
106
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.4.10](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.4.9...@janus-idp/backstage-plugin-jfrog-artifactory@1.4.10) (2024-06-04)
107
+
108
+ ### Dependencies
109
+
110
+ - **@janus-idp/shared-react:** upgraded to 2.6.4
111
+
112
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.4.9](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.4.8...@janus-idp/backstage-plugin-jfrog-artifactory@1.4.9) (2024-06-03)
113
+
114
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.4.8](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.4.7...@janus-idp/backstage-plugin-jfrog-artifactory@1.4.8) (2024-06-03)
115
+
116
+ ### Dependencies
117
+
118
+ - **@janus-idp/cli:** upgraded to 1.9.0
119
+
120
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.4.7](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.4.6...@janus-idp/backstage-plugin-jfrog-artifactory@1.4.7) (2024-05-31)
121
+
122
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.4.6](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.4.5...@janus-idp/backstage-plugin-jfrog-artifactory@1.4.6) (2024-05-29)
123
+
124
+ ### Dependencies
125
+
126
+ - **@janus-idp/cli:** upgraded to 1.8.10
127
+
128
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.4.5](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.4.4...@janus-idp/backstage-plugin-jfrog-artifactory@1.4.5) (2024-05-29)
129
+
130
+ ### Bug Fixes
131
+
132
+ - **release:** change problematic plugins to private ([#1738](https://github.com/janus-idp/backstage-plugins/issues/1738)) ([69176bd](https://github.com/janus-idp/backstage-plugins/commit/69176bd75ccd842a313445e096223ecc339b655b))
133
+
134
+ ### Dependencies
135
+
136
+ - **@janus-idp/shared-react:** upgraded to 2.6.3
137
+ - **@janus-idp/cli:** upgraded to 1.8.9
138
+
139
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.4.4](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.4.3...@janus-idp/backstage-plugin-jfrog-artifactory@1.4.4) (2024-05-29)
140
+
141
+ ### Dependencies
142
+
143
+ - **@janus-idp/shared-react:** upgraded to 2.6.3
144
+
145
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.4.3](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.4.2...@janus-idp/backstage-plugin-jfrog-artifactory@1.4.3) (2024-05-17)
146
+
147
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.4.2](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.4.1...@janus-idp/backstage-plugin-jfrog-artifactory@1.4.2) (2024-05-16)
148
+
149
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.4.1](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.4.0...@janus-idp/backstage-plugin-jfrog-artifactory@1.4.1) (2024-05-16)
150
+
151
+ ### Dependencies
152
+
153
+ - **@janus-idp/shared-react:** upgraded to 2.6.2
154
+ - **@janus-idp/cli:** upgraded to 1.8.7
155
+
156
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.4.0](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.3.6...@janus-idp/backstage-plugin-jfrog-artifactory@1.4.0) (2024-05-14)
157
+
158
+ ### Features
159
+
160
+ - **deps:** use RHDH themes in the backstage app and dev pages ([#1480](https://github.com/janus-idp/backstage-plugins/issues/1480)) ([8263bf0](https://github.com/janus-idp/backstage-plugins/commit/8263bf099736cbb0d0f2316082d338ba81fa6927))
161
+
162
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.3.6](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.3.5...@janus-idp/backstage-plugin-jfrog-artifactory@1.3.6) (2024-05-09)
163
+
164
+ ### Dependencies
165
+
166
+ - **@janus-idp/shared-react:** upgraded to 2.6.1
167
+ - **@janus-idp/cli:** upgraded to 1.8.6
168
+
169
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.3.5](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.3.4...@janus-idp/backstage-plugin-jfrog-artifactory@1.3.5) (2024-05-02)
170
+
171
+ ### Dependencies
172
+
173
+ - **@janus-idp/cli:** upgraded to 1.8.5
174
+
175
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.3.4](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.3.3...@janus-idp/backstage-plugin-jfrog-artifactory@1.3.4) (2024-05-02)
176
+
177
+ ### Dependencies
178
+
179
+ - **@janus-idp/cli:** upgraded to 1.8.4
180
+
181
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.3.3](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.3.2...@janus-idp/backstage-plugin-jfrog-artifactory@1.3.3) (2024-04-30)
182
+
183
+ ### Dependencies
184
+
185
+ - **@janus-idp/cli:** upgraded to 1.8.3
186
+
187
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.3.2](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.3.1...@janus-idp/backstage-plugin-jfrog-artifactory@1.3.2) (2024-04-30)
188
+
189
+ ### Dependencies
190
+
191
+ - **@janus-idp/cli:** upgraded to 1.8.2
192
+
193
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.3.1](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.3.0...@janus-idp/backstage-plugin-jfrog-artifactory@1.3.1) (2024-04-25)
194
+
195
+ ### Dependencies
196
+
197
+ - **@janus-idp/cli:** upgraded to 1.8.1
198
+
199
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.3.0](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.35...@janus-idp/backstage-plugin-jfrog-artifactory@1.3.0) (2024-04-15)
200
+
201
+ ### Features
202
+
203
+ - checkPluginVersion.sh bump plugins for 1.2.0 release ([#1511](https://github.com/janus-idp/backstage-plugins/issues/1511)) ([73c6588](https://github.com/janus-idp/backstage-plugins/commit/73c6588adb7e8c20907b06f2a8ef248cfd4332e4))
204
+
205
+ ### Dependencies
206
+
207
+ - **@janus-idp/shared-react:** upgraded to 2.6.0
208
+ - **@janus-idp/cli:** upgraded to 1.8.0
209
+
210
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.35](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.34...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.35) (2024-04-09)
211
+
212
+ ### Dependencies
213
+
214
+ - **@janus-idp/cli:** upgraded to 1.7.10
215
+
216
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.34](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.33...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.34) (2024-04-09)
217
+
218
+ ### Dependencies
219
+
220
+ - **@janus-idp/shared-react:** upgraded to 2.5.5
221
+
222
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.33](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.32...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.33) (2024-04-09)
223
+
224
+ ### Dependencies
225
+
226
+ - **@janus-idp/cli:** upgraded to 1.7.9
227
+
228
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.32](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.31...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.32) (2024-04-08)
229
+
230
+ ### Dependencies
231
+
232
+ - **@janus-idp/shared-react:** upgraded to 2.5.4
233
+
234
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.31](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.30...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.31) (2024-04-05)
235
+
236
+ ### Dependencies
237
+
238
+ - **@janus-idp/shared-react:** upgraded to 2.5.4
239
+ - **@janus-idp/cli:** upgraded to 1.7.8
240
+
241
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.30](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.29...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.30) (2024-04-02)
242
+
243
+ ### Dependencies
244
+
245
+ - **@janus-idp/cli:** upgraded to 1.7.7
246
+
247
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.29](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.28...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.29) (2024-03-29)
248
+
249
+ ### Dependencies
250
+
251
+ - **@janus-idp/shared-react:** upgraded to 2.5.3
252
+ - **@janus-idp/cli:** upgraded to 1.7.6
253
+
254
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.28](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.27...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.28) (2024-03-04)
255
+
256
+ ### Dependencies
257
+
258
+ - **@janus-idp/cli:** upgraded to 1.7.5
259
+
260
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.27](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.26...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.27) (2024-02-27)
261
+
262
+ ### Dependencies
263
+
264
+ - **@janus-idp/cli:** upgraded to 1.7.4
265
+
266
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.26](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.25...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.26) (2024-02-26)
267
+
268
+ ### Dependencies
269
+
270
+ - **@janus-idp/cli:** upgraded to 1.7.3
271
+
272
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.25](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.24...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.25) (2024-02-21)
273
+
274
+ ### Dependencies
275
+
276
+ - **@janus-idp/shared-react:** upgraded to 2.5.2
277
+ - **@janus-idp/cli:** upgraded to 1.7.2
278
+
279
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.24](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.23...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.24) (2024-02-05)
280
+
281
+ ### Dependencies
282
+
283
+ - **@janus-idp/cli:** upgraded to 1.7.1
284
+
285
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.23](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.22...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.23) (2024-02-02)
286
+
287
+ ### Dependencies
288
+
289
+ - **@janus-idp/shared-react:** upgraded to 2.5.1
290
+
291
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.22](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.21...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.22) (2024-01-30)
292
+
293
+ ### Dependencies
294
+
295
+ - **@janus-idp/cli:** upgraded to 1.7.0
296
+
297
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.21](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.20...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.21) (2024-01-30)
298
+
299
+ ### Dependencies
300
+
301
+ - **@janus-idp/shared-react:** upgraded to 2.5.0
302
+
303
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.20](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.19...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.20) (2024-01-25)
304
+
305
+ ### Dependencies
306
+
307
+ - **@janus-idp/cli:** upgraded to 1.6.0
308
+
309
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.19](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.18...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.19) (2024-01-17)
310
+
311
+ ### Other changes
312
+
313
+ - **web-terminal:** remove TerminalComponent test race condition issue ([#1071](https://github.com/janus-idp/backstage-plugins/issues/1071)) ([05ee8dc](https://github.com/janus-idp/backstage-plugins/commit/05ee8dc8812c012217d7fc9de24cd86843ed9642)), closes [#1070](https://github.com/janus-idp/backstage-plugins/issues/1070)
314
+
315
+ ### Dependencies
316
+
317
+ - **@janus-idp/shared-react:** upgraded to 2.4.0
318
+
319
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.18](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.17...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.18) (2024-01-16)
320
+
321
+ ### Dependencies
322
+
323
+ - **@janus-idp/cli:** upgraded to 1.5.0
324
+
325
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.17](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.16...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.17) (2023-12-22)
326
+
327
+ ### Dependencies
328
+
329
+ - **@janus-idp/shared-react:** upgraded to 2.3.0
330
+
331
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.16](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.15...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.16) (2023-12-20)
332
+
333
+ ### Dependencies
334
+
335
+ - **@janus-idp/shared-react:** upgraded to 2.2.0
336
+
337
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.15](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.14...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.15) (2023-12-14)
338
+
339
+ ### Dependencies
340
+
341
+ - **@janus-idp/shared-react:** upgraded to 2.1.0
342
+
343
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.14](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.13...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.14) (2023-12-07)
344
+
345
+ ### Dependencies
346
+
347
+ - **@janus-idp/cli:** upgraded to 1.4.7
348
+
349
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.13](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.12...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.13) (2023-11-30)
350
+
351
+ ### Dependencies
352
+
353
+ - **@janus-idp/cli:** upgraded to 1.4.6
354
+
355
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.12](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.11...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.12) (2023-11-23)
356
+
357
+ ### Bug Fixes
358
+
359
+ - add config partials for dynamic frontend plugins ([#965](https://github.com/janus-idp/backstage-plugins/issues/965)) ([b01e55e](https://github.com/janus-idp/backstage-plugins/commit/b01e55e877278afc5de8d28a4c687a6989566bdc))
360
+
361
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.11](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.10...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.11) (2023-11-23)
362
+
363
+ ### Dependencies
364
+
365
+ - **@janus-idp/shared-react:** upgraded to 2.0.1
366
+
367
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.10](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.9...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.10) (2023-11-22)
368
+
369
+ ### Dependencies
370
+
371
+ - **@janus-idp/cli:** upgraded to 1.4.5
372
+
373
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.9](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.8...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.9) (2023-11-21)
374
+
375
+ ### Bug Fixes
376
+
377
+ - sync versions in dynamic assets and publish derived packages as additional packages ([#963](https://github.com/janus-idp/backstage-plugins/issues/963)) ([7d0a386](https://github.com/janus-idp/backstage-plugins/commit/7d0a38609b4a18b54c75378a150e8b5c3ba8ff43))
378
+
379
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.8](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.7...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.8) (2023-11-20)
380
+
381
+ ### Dependencies
382
+
383
+ - **@janus-idp/cli:** upgraded to 1.4.4
384
+
385
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.7](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.6...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.7) (2023-11-16)
386
+
387
+ ### Dependencies
388
+
389
+ - **@janus-idp/cli:** upgraded to 1.4.3
390
+
391
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.6](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.5...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.6) (2023-11-13)
392
+
393
+ ### Dependencies
394
+
395
+ - **@janus-idp/cli:** upgraded to 1.4.2
396
+
397
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.5](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.4...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.5) (2023-11-13)
398
+
399
+ ### Dependencies
400
+
401
+ - **@janus-idp/cli:** upgraded to 1.4.1
402
+
403
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.4](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.3...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.4) (2023-11-07)
404
+
405
+ ### Dependencies
406
+
407
+ - **@janus-idp/cli:** upgraded to 1.4.0
408
+
409
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.3](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.2...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.3) (2023-11-06)
410
+
411
+ ### Bug Fixes
412
+
413
+ - **cli:** add default scalprum config ([#909](https://github.com/janus-idp/backstage-plugins/issues/909)) ([d74fc72](https://github.com/janus-idp/backstage-plugins/commit/d74fc72ab7e0a843da047c7b6570d8a6fbc068e1))
414
+
415
+ ### Dependencies
416
+
417
+ - **@janus-idp/cli:** upgraded to 1.3.3
418
+
419
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.2](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.1...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.2) (2023-11-06)
420
+
421
+ ### Documentation
422
+
423
+ - update frontend plugin docs to use EntityLayout instead of EntityPageLayout ([#907](https://github.com/janus-idp/backstage-plugins/issues/907)) ([aa91bba](https://github.com/janus-idp/backstage-plugins/commit/aa91bba4c7a43de416258eb019724e21c7cf4bb8))
424
+
425
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.1](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.2.0...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.1) (2023-11-02)
426
+
427
+ ### Dependencies
428
+
429
+ - **@janus-idp/cli:** upgraded to 1.3.2
430
+
431
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.2.0](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.1.6...@janus-idp/backstage-plugin-jfrog-artifactory@1.2.0) (2023-11-01)
432
+
433
+ ### Features
434
+
435
+ - **dynamic-plugins:** publish dynamic assets for all frontend plugins ([#896](https://github.com/janus-idp/backstage-plugins/issues/896)) ([dcfb0ac](https://github.com/janus-idp/backstage-plugins/commit/dcfb0ac56769c82f6b8b2cef2726251e0b60c375))
436
+
437
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.1.6](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.1.5...@janus-idp/backstage-plugin-jfrog-artifactory@1.1.6) (2023-10-23)
438
+
439
+ ### Dependencies
440
+
441
+ - **@janus-idp/shared-react:** upgraded to 2.0.0
442
+
443
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.1.5](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.1.4...@janus-idp/backstage-plugin-jfrog-artifactory@1.1.5) (2023-10-19)
444
+
445
+ ### Dependencies
446
+
447
+ - **@janus-idp/shared-react:** upgraded to 1.3.3
448
+
449
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.1.4](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.1.3...@janus-idp/backstage-plugin-jfrog-artifactory@1.1.4) (2023-10-16)
450
+
451
+ ### Dependencies
452
+
453
+ - **@janus-idp/shared-react:** upgraded to 1.3.2
454
+
455
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.1.3](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.1.2...@janus-idp/backstage-plugin-jfrog-artifactory@1.1.3) (2023-09-22)
456
+
457
+ ### Dependencies
458
+
459
+ - **@janus-idp/shared-react:** upgraded to 1.3.1
460
+
461
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.1.2](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.1.1...@janus-idp/backstage-plugin-jfrog-artifactory@1.1.2) (2023-09-06)
462
+
463
+ ### Documentation
464
+
465
+ - **jfrog:** jfrog artifactory plugin documentation ([#708](https://github.com/janus-idp/backstage-plugins/issues/708)) ([078fd1c](https://github.com/janus-idp/backstage-plugins/commit/078fd1c9d7185792b38c59673d3d173eae6cebf2))
466
+
467
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.1.1](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.1.0...@janus-idp/backstage-plugin-jfrog-artifactory@1.1.1) (2023-09-05)
468
+
469
+ ### Documentation
470
+
471
+ - **jfrog:** update README.md ([#696](https://github.com/janus-idp/backstage-plugins/issues/696)) ([425a09b](https://github.com/janus-idp/backstage-plugins/commit/425a09b212d1f4ee1fb43e3562d0dde589950249))
472
+
473
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.1.0](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.0.14...@janus-idp/backstage-plugin-jfrog-artifactory@1.1.0) (2023-08-14)
474
+
475
+ ### Features
476
+
477
+ - **ts:** transpile each plugin separately ([#634](https://github.com/janus-idp/backstage-plugins/issues/634)) ([b94c4dc](https://github.com/janus-idp/backstage-plugins/commit/b94c4dc50ada328e5ce1bed5fb7c76f64607e1ee))
478
+
479
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.0.14](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.0.13...@janus-idp/backstage-plugin-jfrog-artifactory@1.0.14) (2023-07-25)
480
+
481
+ ### Bug Fixes
482
+
483
+ - **plugins:** add bearer token to request headers when sending requests, authmiddleware issue ([#498](https://github.com/janus-idp/backstage-plugins/issues/498)) ([86881c3](https://github.com/janus-idp/backstage-plugins/commit/86881c37321d1b446f15ff59b2fcb8ebc8500786))
484
+
485
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.0.13](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.0.12...@janus-idp/backstage-plugin-jfrog-artifactory@1.0.13) (2023-07-25)
486
+
487
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.0.12](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.0.11...@janus-idp/backstage-plugin-jfrog-artifactory@1.0.12) (2023-06-26)
488
+
489
+ ### Documentation
490
+
491
+ - **jfrog:** be explicit about JFrog SaaS target URI ([#451](https://github.com/janus-idp/backstage-plugins/issues/451)) ([2ca2d7a](https://github.com/janus-idp/backstage-plugins/commit/2ca2d7afe18a4f5d858e5a43c908228ef828792e))
492
+
493
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.0.11](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.0.10...@janus-idp/backstage-plugin-jfrog-artifactory@1.0.11) (2023-06-21)
494
+
495
+ ### Documentation
496
+
497
+ - **jfrog:** adding admin sections in readme ([#474](https://github.com/janus-idp/backstage-plugins/issues/474)) ([36ba737](https://github.com/janus-idp/backstage-plugins/commit/36ba73717f5d7ae52968a1213d792a1f6a78bc1e))
498
+
499
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.0.10](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.0.9...@janus-idp/backstage-plugin-jfrog-artifactory@1.0.10) (2023-06-14)
500
+
501
+ ### Other changes
502
+
503
+ - reorder imports via prettier ([#419](https://github.com/janus-idp/backstage-plugins/issues/419)) ([17f1e6a](https://github.com/janus-idp/backstage-plugins/commit/17f1e6a689bd793a619ec5e42e5cdda0998f78a5))
504
+
505
+ ### Documentation
506
+
507
+ - update plugin README formatting ([#396](https://github.com/janus-idp/backstage-plugins/issues/396)) ([9b39056](https://github.com/janus-idp/backstage-plugins/commit/9b39056f6c66e9a6a0a5d0c4059420dff66db263)), closes [#295](https://github.com/janus-idp/backstage-plugins/issues/295) [#369](https://github.com/janus-idp/backstage-plugins/issues/369) [#295](https://github.com/janus-idp/backstage-plugins/issues/295) [#369](https://github.com/janus-idp/backstage-plugins/issues/369)
508
+
509
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.0.9](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.0.8...@janus-idp/backstage-plugin-jfrog-artifactory@1.0.9) (2023-05-30)
510
+
511
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.0.8](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.0.7...@janus-idp/backstage-plugin-jfrog-artifactory@1.0.8) (2023-05-30)
512
+
513
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.0.7](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.0.6...@janus-idp/backstage-plugin-jfrog-artifactory@1.0.7) (2023-05-18)
514
+
515
+ ### Documentation
516
+
517
+ - update plugin READMEs ([#373](https://github.com/janus-idp/backstage-plugins/issues/373)) ([478560e](https://github.com/janus-idp/backstage-plugins/commit/478560e38cceaa40d976bccf4785956ed58b5221))
518
+
519
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.0.6](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.0.5...@janus-idp/backstage-plugin-jfrog-artifactory@1.0.6) (2023-05-17)
520
+
521
+ ### Bug Fixes
522
+
523
+ - **deps:** update all non-major dependencies ([#358](https://github.com/janus-idp/backstage-plugins/issues/358)) ([086a9ed](https://github.com/janus-idp/backstage-plugins/commit/086a9ed839f3a6dd1460f0f87b71453a7ed62ea3))
524
+
525
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.0.5](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.0.4...@janus-idp/backstage-plugin-jfrog-artifactory@1.0.5) (2023-05-15)
526
+
527
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.0.4](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.0.3...@janus-idp/backstage-plugin-jfrog-artifactory@1.0.4) (2023-05-15)
528
+
529
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.0.3](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.0.2...@janus-idp/backstage-plugin-jfrog-artifactory@1.0.3) (2023-05-11)
530
+
531
+ ### Bug Fixes
532
+
533
+ - **deps:** update all non-major dependencies ([#339](https://github.com/janus-idp/backstage-plugins/issues/339)) ([d19d96d](https://github.com/janus-idp/backstage-plugins/commit/d19d96de7b55c205e0f77528e476104c0685aad2))
534
+
535
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.0.2](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.0.1...@janus-idp/backstage-plugin-jfrog-artifactory@1.0.2) (2023-05-09)
536
+
537
+ ### Other changes
538
+
539
+ - **deps:** update all non-major dependencies ([#333](https://github.com/janus-idp/backstage-plugins/issues/333)) ([dce0ea4](https://github.com/janus-idp/backstage-plugins/commit/dce0ea4a9b9f517bd864d39f0b364c68e6a2e143))
540
+
541
+ ## @janus-idp/backstage-plugin-jfrog-artifactory [1.0.1](https://github.com/janus-idp/backstage-plugins/compare/@janus-idp/backstage-plugin-jfrog-artifactory@1.0.0...@janus-idp/backstage-plugin-jfrog-artifactory@1.0.1) (2023-05-04)
542
+
543
+ ### Other changes
544
+
545
+ - **deps:** update all non-major dependencies ([#127](https://github.com/janus-idp/backstage-plugins/issues/127)) ([a9d359f](https://github.com/janus-idp/backstage-plugins/commit/a9d359f01448d1b9b4b4d3d9b087052fb6ff16b3))
546
+
547
+ ## @janus-idp/backstage-plugin-jfrog-artifactory 1.0.0 (2023-04-13)
548
+
549
+ ### Features
550
+
551
+ - **artifactory:** Rename to jfrog-artifactory ([#211](https://github.com/janus-idp/backstage-plugins/issues/211)) ([2c0ecaf](https://github.com/janus-idp/backstage-plugins/commit/2c0ecafb6fbf68aeb1646b37dc9f7565253261e8))
552
+
553
+ ## @janus-idp/backstage-plugin-artifactory 1.0.0 (2023-03-29)
554
+
555
+ ### Features
556
+
557
+ - **artifactory:** First funtional version of the plugin ([#198](https://github.com/janus-idp/backstage-plugins/issues/198)) ([b900593](https://github.com/janus-idp/backstage-plugins/commit/b900593f4ee7c0f7f40672acc3e64926eb381af9))
package/README.md ADDED
@@ -0,0 +1,84 @@
1
+ # Jfrog Artifactory plugin for Backstage
2
+
3
+ The Jfrog Artifactory plugin displays information about your container images within the Jfrog Artifactory registry.
4
+
5
+ ## For administrators
6
+
7
+ ### Installation and configuration
8
+
9
+ #### Procedure
10
+
11
+ 1. Run the following command to install the Jfrog Artifactory plugin:
12
+
13
+ ```console
14
+ yarn workspace app add @backstage-community/plugin-jfrog-artifactory
15
+ ```
16
+
17
+ 1. Set the proxy to the desired Artifactory server in the `app-config.yaml` file as follows:
18
+
19
+ ```yaml title="app-config.yaml"
20
+ proxy:
21
+ endpoints:
22
+ '/jfrog-artifactory/api':
23
+ target: 'http://<hostname>:8082' # or https://<customer>.jfrog.io
24
+ headers:
25
+ # Authorization: 'Bearer <YOUR TOKEN>'
26
+ # Change to "false" in case of using self hosted artifactory instance with a self-signed certificate
27
+ secure: true
28
+ ```
29
+
30
+ 1. Enable the **JFROG ARTIFACTORY** tab on the entity view page in `packages/app/src/components/catalog/EntityPage.tsx`:
31
+
32
+ ```ts title="packages/app/src/components/catalog/EntityPage.tsx"
33
+ /* highlight-add-start */
34
+ import {
35
+ isJfrogArtifactoryAvailable,
36
+ JfrogArtifactoryPage,
37
+ } from '@backstage-community/plugin-jfrog-artifactory';
38
+
39
+ /* highlight-add-end */
40
+
41
+ const serviceEntityPage = (
42
+ <EntityLayout>
43
+ // ...
44
+ {/* highlight-add-start */}
45
+ <EntityLayout.Route
46
+ if={isJfrogArtifactoryAvailable}
47
+ path="/jfrog-artifactory"
48
+ title="Jfrog Artifactory"
49
+ >
50
+ <JfrogArtifactoryPage />
51
+ </EntityLayout.Route>
52
+ {/* highlight-add-end */}
53
+ </EntityLayout>
54
+ );
55
+ ```
56
+
57
+ 1. Annotate your entity with the following annotations:
58
+
59
+ ```yaml title="catalog-info.yaml"
60
+ metadata:
61
+ annotations:
62
+ 'jfrog-artifactory/image-name': '<IMAGE-NAME>'
63
+ ```
64
+
65
+ ## For users
66
+
67
+ ### Using the Jfrog Artifactory plugin in Backstage
68
+
69
+ Jfrog Artifactory is a front-end plugin that enables you to view the information about the container images that are available in your Jfrog Artifactory registry.
70
+
71
+ #### Prerequisites
72
+
73
+ - Your Backstage application is installed and running.
74
+ - You have installed the Jfrog Artifactory plugin. For installation and configuration steps, see [Installation and configuration](#installation-and-configuration).
75
+
76
+ #### Procedure
77
+
78
+ 1. Open your Backstage application and select a component from the **Catalog** page.
79
+
80
+ 1. Go to the **JFROG ARTIFACTORY** tab.
81
+
82
+ ![jfrog-tab](./images/jfrog-plugin-user1.png)
83
+
84
+ The **JFROG ARTIFACTORY** tab contains a list of container images and related information, such as **VERSION**, **REPOSITORIES**, **MANIFEST**, **MODIFIED**, and **SIZE**.
@@ -0,0 +1,21 @@
1
+ proxy:
2
+ endpoints:
3
+ '/jfrog-artifactory/api':
4
+ target: ${ARTIFACTORY_URL}
5
+ headers:
6
+ Authorization: Bearer ${ARTIFACTORY_TOKEN}
7
+ # Change to "false" in case of using self hosted artifactory instance with a self-signed certificate
8
+ secure: true
9
+
10
+ dynamicPlugins:
11
+ frontend:
12
+ backstage-community.plugin-jfrog-artifactory:
13
+ mountPoints:
14
+ - mountPoint: entity.page.image-registry/cards
15
+ importName: JfrogArtifactoryPage
16
+ config:
17
+ layout:
18
+ gridColumn: 1 / -1
19
+ if:
20
+ anyOf:
21
+ - isJfrogArtifactoryAvailable
package/config.d.ts ADDED
@@ -0,0 +1,25 @@
1
+ /*
2
+ * Copyright 2024 The Backstage Authors
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ export interface Config {
17
+ /** Configurations for the Jfrog Artifactory plugin */
18
+ jfrogArtifactory?: {
19
+ /**
20
+ * The base url of the Jfrog Artifactory instance.
21
+ * @visibility frontend
22
+ */
23
+ proxyPath?: string;
24
+ };
25
+ }
@@ -0,0 +1,63 @@
1
+ import { createApiRef } from '@backstage/core-plugin-api';
2
+
3
+ const DEFAULT_PROXY_PATH = "/jfrog-artifactory/api";
4
+ const jfrogArtifactoryApiRef = createApiRef({
5
+ id: "plugin.jfrog-artifactory.service"
6
+ });
7
+ class JfrogArtifactoryApiClient {
8
+ // @ts-ignore
9
+ discoveryApi;
10
+ configApi;
11
+ identityApi;
12
+ constructor(options) {
13
+ this.discoveryApi = options.discoveryApi;
14
+ this.configApi = options.configApi;
15
+ this.identityApi = options.identityApi;
16
+ }
17
+ async getBaseUrl() {
18
+ const proxyPath = this.configApi.getOptionalString("jfrogArtifactory.proxyPath") || DEFAULT_PROXY_PATH;
19
+ return `${await this.discoveryApi.getBaseUrl("proxy")}${proxyPath}`;
20
+ }
21
+ async fetcher(url, query) {
22
+ const { token: idToken } = await this.identityApi.getCredentials();
23
+ const response = await fetch(url, {
24
+ headers: {
25
+ "Content-Type": "application/json",
26
+ ...idToken && { Authorization: `Bearer ${idToken}` }
27
+ },
28
+ method: "POST",
29
+ body: query
30
+ });
31
+ if (!response.ok) {
32
+ throw new Error(
33
+ `failed to fetch data, status ${response.status}: ${response.statusText}`
34
+ );
35
+ }
36
+ return await response.json();
37
+ }
38
+ async getTags(repo) {
39
+ const proxyUrl = await this.getBaseUrl();
40
+ const tagQuery = {
41
+ query: "query ($filter: VersionFilter!, $first: Int, $orderBy: VersionOrder) { versions (filter: $filter, first: $first, orderBy: $orderBy) { edges { node { name, created, modified, package { id }, repos { name, type, leadFilePath }, licenses { name, source }, size, stats { downloadCount }, vulnerabilities { critical, high, medium, low, info, unknown, skipped }, files { name, lead, size, md5, sha1, sha256, mimeType } } } } }",
42
+ variables: {
43
+ filter: {
44
+ packageId: `docker://${repo}`,
45
+ name: "*",
46
+ ignorePreRelease: false
47
+ },
48
+ first: 100,
49
+ orderBy: {
50
+ field: "NAME_SEMVER",
51
+ direction: "DESC"
52
+ }
53
+ }
54
+ };
55
+ return await this.fetcher(
56
+ `${proxyUrl}/metadata/api/v1/query`,
57
+ JSON.stringify(tagQuery)
58
+ );
59
+ }
60
+ }
61
+
62
+ export { JfrogArtifactoryApiClient, jfrogArtifactoryApiRef };
63
+ //# sourceMappingURL=index.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.esm.js","sources":["../../src/api/index.ts"],"sourcesContent":["/*\n * Copyright 2024 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport {\n ConfigApi,\n createApiRef,\n DiscoveryApi,\n IdentityApi,\n} from '@backstage/core-plugin-api';\n\nimport { TagsResponse } from '../types';\n\nconst DEFAULT_PROXY_PATH = '/jfrog-artifactory/api';\n\nexport interface JfrogArtifactoryApiV1 {\n getTags(repo: string): Promise<TagsResponse>;\n}\n\nexport const jfrogArtifactoryApiRef = createApiRef<JfrogArtifactoryApiV1>({\n id: 'plugin.jfrog-artifactory.service',\n});\n\nexport type Options = {\n discoveryApi: DiscoveryApi;\n configApi: ConfigApi;\n identityApi: IdentityApi;\n};\n\nexport class JfrogArtifactoryApiClient implements JfrogArtifactoryApiV1 {\n // @ts-ignore\n private readonly discoveryApi: DiscoveryApi;\n\n private readonly configApi: ConfigApi;\n\n private readonly identityApi: IdentityApi;\n\n constructor(options: Options) {\n this.discoveryApi = options.discoveryApi;\n this.configApi = options.configApi;\n this.identityApi = options.identityApi;\n }\n\n private async getBaseUrl() {\n const proxyPath =\n this.configApi.getOptionalString('jfrogArtifactory.proxyPath') ||\n DEFAULT_PROXY_PATH;\n return `${await this.discoveryApi.getBaseUrl('proxy')}${proxyPath}`;\n }\n\n private async fetcher(url: string, query: string) {\n const { token: idToken } = await this.identityApi.getCredentials();\n const response = await fetch(url, {\n headers: {\n 'Content-Type': 'application/json',\n ...(idToken && { Authorization: `Bearer ${idToken}` }),\n },\n method: 'POST',\n body: query,\n });\n if (!response.ok) {\n throw new Error(\n `failed to fetch data, status ${response.status}: ${response.statusText}`,\n );\n }\n return await response.json();\n }\n\n async getTags(repo: string) {\n const proxyUrl = await this.getBaseUrl();\n const tagQuery = {\n query:\n 'query ($filter: VersionFilter!, $first: Int, $orderBy: VersionOrder) { versions (filter: $filter, first: $first, orderBy: $orderBy) { edges { node { name, created, modified, package { id }, repos { name, type, leadFilePath }, licenses { name, source }, size, stats { downloadCount }, vulnerabilities { critical, high, medium, low, info, unknown, skipped }, files { name, lead, size, md5, sha1, sha256, mimeType } } } } }',\n variables: {\n filter: {\n packageId: `docker://${repo}`,\n name: '*',\n ignorePreRelease: false,\n },\n first: 100,\n orderBy: {\n field: 'NAME_SEMVER',\n direction: 'DESC',\n },\n },\n };\n\n return (await this.fetcher(\n `${proxyUrl}/metadata/api/v1/query`,\n JSON.stringify(tagQuery),\n )) as TagsResponse;\n }\n}\n"],"names":[],"mappings":";;AAwBA,MAAM,kBAAqB,GAAA,wBAAA,CAAA;AAMpB,MAAM,yBAAyB,YAAoC,CAAA;AAAA,EACxE,EAAI,EAAA,kCAAA;AACN,CAAC,EAAA;AAQM,MAAM,yBAA2D,CAAA;AAAA;AAAA,EAErD,YAAA,CAAA;AAAA,EAEA,SAAA,CAAA;AAAA,EAEA,WAAA,CAAA;AAAA,EAEjB,YAAY,OAAkB,EAAA;AAC5B,IAAA,IAAA,CAAK,eAAe,OAAQ,CAAA,YAAA,CAAA;AAC5B,IAAA,IAAA,CAAK,YAAY,OAAQ,CAAA,SAAA,CAAA;AACzB,IAAA,IAAA,CAAK,cAAc,OAAQ,CAAA,WAAA,CAAA;AAAA,GAC7B;AAAA,EAEA,MAAc,UAAa,GAAA;AACzB,IAAA,MAAM,SACJ,GAAA,IAAA,CAAK,SAAU,CAAA,iBAAA,CAAkB,4BAA4B,CAC7D,IAAA,kBAAA,CAAA;AACF,IAAO,OAAA,CAAA,EAAG,MAAM,IAAK,CAAA,YAAA,CAAa,WAAW,OAAO,CAAC,GAAG,SAAS,CAAA,CAAA,CAAA;AAAA,GACnE;AAAA,EAEA,MAAc,OAAQ,CAAA,GAAA,EAAa,KAAe,EAAA;AAChD,IAAA,MAAM,EAAE,KAAO,EAAA,OAAA,KAAY,MAAM,IAAA,CAAK,YAAY,cAAe,EAAA,CAAA;AACjE,IAAM,MAAA,QAAA,GAAW,MAAM,KAAA,CAAM,GAAK,EAAA;AAAA,MAChC,OAAS,EAAA;AAAA,QACP,cAAgB,EAAA,kBAAA;AAAA,QAChB,GAAI,OAAW,IAAA,EAAE,aAAe,EAAA,CAAA,OAAA,EAAU,OAAO,CAAG,CAAA,EAAA;AAAA,OACtD;AAAA,MACA,MAAQ,EAAA,MAAA;AAAA,MACR,IAAM,EAAA,KAAA;AAAA,KACP,CAAA,CAAA;AACD,IAAI,IAAA,CAAC,SAAS,EAAI,EAAA;AAChB,MAAA,MAAM,IAAI,KAAA;AAAA,QACR,CAAgC,6BAAA,EAAA,QAAA,CAAS,MAAM,CAAA,EAAA,EAAK,SAAS,UAAU,CAAA,CAAA;AAAA,OACzE,CAAA;AAAA,KACF;AACA,IAAO,OAAA,MAAM,SAAS,IAAK,EAAA,CAAA;AAAA,GAC7B;AAAA,EAEA,MAAM,QAAQ,IAAc,EAAA;AAC1B,IAAM,MAAA,QAAA,GAAW,MAAM,IAAA,CAAK,UAAW,EAAA,CAAA;AACvC,IAAA,MAAM,QAAW,GAAA;AAAA,MACf,KACE,EAAA,saAAA;AAAA,MACF,SAAW,EAAA;AAAA,QACT,MAAQ,EAAA;AAAA,UACN,SAAA,EAAW,YAAY,IAAI,CAAA,CAAA;AAAA,UAC3B,IAAM,EAAA,GAAA;AAAA,UACN,gBAAkB,EAAA,KAAA;AAAA,SACpB;AAAA,QACA,KAAO,EAAA,GAAA;AAAA,QACP,OAAS,EAAA;AAAA,UACP,KAAO,EAAA,aAAA;AAAA,UACP,SAAW,EAAA,MAAA;AAAA,SACb;AAAA,OACF;AAAA,KACF,CAAA;AAEA,IAAA,OAAQ,MAAM,IAAK,CAAA,OAAA;AAAA,MACjB,GAAG,QAAQ,CAAA,sBAAA,CAAA;AAAA,MACX,IAAA,CAAK,UAAU,QAAQ,CAAA;AAAA,KACzB,CAAA;AAAA,GACF;AACF;;;;"}
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ import { useEntity } from '@backstage/plugin-catalog-react';
3
+ import { JfrogArtifactoryRepository } from '../JfrogArtifactoryRepository/JfrogArtifactoryRepository.esm.js';
4
+ import { useJfrogArtifactoryAppData } from '../useJfrogArtifactoryAppData.esm.js';
5
+
6
+ const JfrogArtifactoryDashboardPage = () => {
7
+ const { entity } = useEntity();
8
+ const { imageName } = useJfrogArtifactoryAppData({ entity });
9
+ return /* @__PURE__ */ React.createElement(JfrogArtifactoryRepository, { image: imageName });
10
+ };
11
+
12
+ export { JfrogArtifactoryDashboardPage };
13
+ //# sourceMappingURL=JfrogArtifactoryDashboardPage.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JfrogArtifactoryDashboardPage.esm.js","sources":["../../../src/components/JfrogArtifactoryDashboardPage/JfrogArtifactoryDashboardPage.tsx"],"sourcesContent":["/*\n * Copyright 2024 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport React from 'react';\n\nimport { useEntity } from '@backstage/plugin-catalog-react';\n\nimport { JfrogArtifactoryRepository } from '../JfrogArtifactoryRepository';\nimport { useJfrogArtifactoryAppData } from '../useJfrogArtifactoryAppData';\n\nexport const JfrogArtifactoryDashboardPage = () => {\n const { entity } = useEntity();\n const { imageName } = useJfrogArtifactoryAppData({ entity });\n\n return <JfrogArtifactoryRepository image={imageName} />;\n};\n"],"names":[],"mappings":";;;;;AAsBO,MAAM,gCAAgC,MAAM;AACjD,EAAM,MAAA,EAAE,MAAO,EAAA,GAAI,SAAU,EAAA,CAAA;AAC7B,EAAA,MAAM,EAAE,SAAU,EAAA,GAAI,0BAA2B,CAAA,EAAE,QAAQ,CAAA,CAAA;AAE3D,EAAO,uBAAA,KAAA,CAAA,aAAA,CAAC,0BAA2B,EAAA,EAAA,KAAA,EAAO,SAAW,EAAA,CAAA,CAAA;AACvD;;;;"}
@@ -0,0 +1,2 @@
1
+ export { JfrogArtifactoryDashboardPage } from './JfrogArtifactoryDashboardPage.esm.js';
2
+ //# sourceMappingURL=index.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,57 @@
1
+ import React, { useState } from 'react';
2
+ import { useAsync } from 'react-use';
3
+ import { Progress, Table, Link } from '@backstage/core-components';
4
+ import { useApi } from '@backstage/core-plugin-api';
5
+ import { makeStyles, Box, Chip } from '@material-ui/core';
6
+ import { formatDate, formatByteSize } from '@janus-idp/shared-react';
7
+ import { jfrogArtifactoryApiRef } from '../../api/index.esm.js';
8
+ import { useStyles, columns } from './tableHeading.esm.js';
9
+
10
+ const useLocalStyles = makeStyles({
11
+ chip: {
12
+ margin: 0,
13
+ marginRight: ".2em",
14
+ height: "1.5em",
15
+ "& > span": {
16
+ padding: ".3em"
17
+ }
18
+ }
19
+ });
20
+ function JfrogArtifactoryRepository({ image }) {
21
+ const jfrogArtifactoryClient = useApi(jfrogArtifactoryApiRef);
22
+ const classes = useStyles();
23
+ const localClasses = useLocalStyles();
24
+ const [edges, setEdges] = useState([]);
25
+ const titleprop = `Jfrog Artifactory repository: ${image}`;
26
+ const { loading } = useAsync(async () => {
27
+ const tagsResponse = await jfrogArtifactoryClient.getTags(image);
28
+ setEdges(tagsResponse.data.versions.edges);
29
+ return tagsResponse;
30
+ });
31
+ if (loading) {
32
+ return /* @__PURE__ */ React.createElement(Progress, null);
33
+ }
34
+ const data = edges?.map((edge) => {
35
+ const shortHash = edge.node.files.find((manifest) => manifest.name === "manifest.json")?.sha256.substring(0, 12);
36
+ return {
37
+ name: edge.node.name,
38
+ last_modified: formatDate(edge.node.modified),
39
+ size: formatByteSize(Number(edge.node.size)),
40
+ manifest_digest: /* @__PURE__ */ React.createElement(Box, { sx: { display: "flex", alignItems: "center" } }, /* @__PURE__ */ React.createElement(Chip, { label: "sha256", className: localClasses.chip }), shortHash),
41
+ repositories: `${edge.node.repos.length} | ${edge.node.repos.map((repo) => repo.name).join("| ")}`
42
+ };
43
+ });
44
+ return /* @__PURE__ */ React.createElement("div", { style: { border: "1px solid #ddd" } }, /* @__PURE__ */ React.createElement(
45
+ Table,
46
+ {
47
+ title: titleprop,
48
+ options: { paging: true, padding: "dense" },
49
+ data,
50
+ columns,
51
+ emptyContent: /* @__PURE__ */ React.createElement("div", { className: classes.empty }, "No data was added yet,\xA0", /* @__PURE__ */ React.createElement(Link, { to: "https://backstage.io/" }, "learn how to add data"), ".")
52
+ }
53
+ ));
54
+ }
55
+
56
+ export { JfrogArtifactoryRepository };
57
+ //# sourceMappingURL=JfrogArtifactoryRepository.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JfrogArtifactoryRepository.esm.js","sources":["../../../src/components/JfrogArtifactoryRepository/JfrogArtifactoryRepository.tsx"],"sourcesContent":["/*\n * Copyright 2024 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport React, { useState } from 'react';\nimport { useAsync } from 'react-use';\n\nimport { Link, Progress, Table } from '@backstage/core-components';\nimport { useApi } from '@backstage/core-plugin-api';\n\nimport { Box, Chip, makeStyles } from '@material-ui/core';\n\nimport { formatByteSize, formatDate } from '@janus-idp/shared-react';\n\nimport { jfrogArtifactoryApiRef } from '../../api';\nimport { Edge } from '../../types';\nimport { columns, useStyles } from './tableHeading';\n\nconst useLocalStyles = makeStyles({\n chip: {\n margin: 0,\n marginRight: '.2em',\n height: '1.5em',\n '& > span': {\n padding: '.3em',\n },\n },\n});\n\nexport function JfrogArtifactoryRepository({ image }: RepositoryProps) {\n const jfrogArtifactoryClient = useApi(jfrogArtifactoryApiRef);\n const classes = useStyles();\n const localClasses = useLocalStyles();\n const [edges, setEdges] = useState<Edge[]>([]);\n const titleprop = `Jfrog Artifactory repository: ${image}`;\n\n const { loading } = useAsync(async () => {\n const tagsResponse = await jfrogArtifactoryClient.getTags(image);\n\n setEdges(tagsResponse.data.versions.edges);\n\n return tagsResponse;\n });\n\n if (loading) {\n return <Progress />;\n }\n\n const data = edges?.map((edge: Edge) => {\n const shortHash = edge.node.files\n .find(manifest => manifest.name === 'manifest.json')\n ?.sha256.substring(0, 12);\n return {\n name: edge.node.name,\n last_modified: formatDate(edge.node.modified),\n size: formatByteSize(Number(edge.node.size)),\n manifest_digest: (\n <Box sx={{ display: 'flex', alignItems: 'center' }}>\n <Chip label=\"sha256\" className={localClasses.chip} />\n {shortHash}\n </Box>\n ),\n repositories:\n `${edge.node.repos.length}` +\n ' | ' +\n `${edge.node.repos.map(repo => repo.name).join('| ')}`,\n };\n });\n\n return (\n <div style={{ border: '1px solid #ddd' }}>\n <Table\n title={titleprop}\n options={{ paging: true, padding: 'dense' }}\n data={data}\n columns={columns}\n emptyContent={\n <div className={classes.empty}>\n No data was added yet,&nbsp;\n <Link to=\"https://backstage.io/\">learn how to add data</Link>.\n </div>\n }\n />\n </div>\n );\n}\n\ninterface RepositoryProps {\n image: string;\n}\n"],"names":[],"mappings":";;;;;;;;;AA6BA,MAAM,iBAAiB,UAAW,CAAA;AAAA,EAChC,IAAM,EAAA;AAAA,IACJ,MAAQ,EAAA,CAAA;AAAA,IACR,WAAa,EAAA,MAAA;AAAA,IACb,MAAQ,EAAA,OAAA;AAAA,IACR,UAAY,EAAA;AAAA,MACV,OAAS,EAAA,MAAA;AAAA,KACX;AAAA,GACF;AACF,CAAC,CAAA,CAAA;AAEe,SAAA,0BAAA,CAA2B,EAAE,KAAA,EAA0B,EAAA;AACrE,EAAM,MAAA,sBAAA,GAAyB,OAAO,sBAAsB,CAAA,CAAA;AAC5D,EAAA,MAAM,UAAU,SAAU,EAAA,CAAA;AAC1B,EAAA,MAAM,eAAe,cAAe,EAAA,CAAA;AACpC,EAAA,MAAM,CAAC,KAAO,EAAA,QAAQ,CAAI,GAAA,QAAA,CAAiB,EAAE,CAAA,CAAA;AAC7C,EAAM,MAAA,SAAA,GAAY,iCAAiC,KAAK,CAAA,CAAA,CAAA;AAExD,EAAA,MAAM,EAAE,OAAA,EAAY,GAAA,QAAA,CAAS,YAAY;AACvC,IAAA,MAAM,YAAe,GAAA,MAAM,sBAAuB,CAAA,OAAA,CAAQ,KAAK,CAAA,CAAA;AAE/D,IAAS,QAAA,CAAA,YAAA,CAAa,IAAK,CAAA,QAAA,CAAS,KAAK,CAAA,CAAA;AAEzC,IAAO,OAAA,YAAA,CAAA;AAAA,GACR,CAAA,CAAA;AAED,EAAA,IAAI,OAAS,EAAA;AACX,IAAA,2CAAQ,QAAS,EAAA,IAAA,CAAA,CAAA;AAAA,GACnB;AAEA,EAAA,MAAM,IAAO,GAAA,KAAA,EAAO,GAAI,CAAA,CAAC,IAAe,KAAA;AACtC,IAAA,MAAM,SAAY,GAAA,IAAA,CAAK,IAAK,CAAA,KAAA,CACzB,IAAK,CAAA,CAAA,QAAA,KAAY,QAAS,CAAA,IAAA,KAAS,eAAe,CAAA,EACjD,MAAO,CAAA,SAAA,CAAU,GAAG,EAAE,CAAA,CAAA;AAC1B,IAAO,OAAA;AAAA,MACL,IAAA,EAAM,KAAK,IAAK,CAAA,IAAA;AAAA,MAChB,aAAe,EAAA,UAAA,CAAW,IAAK,CAAA,IAAA,CAAK,QAAQ,CAAA;AAAA,MAC5C,MAAM,cAAe,CAAA,MAAA,CAAO,IAAK,CAAA,IAAA,CAAK,IAAI,CAAC,CAAA;AAAA,MAC3C,iCACG,KAAA,CAAA,aAAA,CAAA,GAAA,EAAA,EAAI,IAAI,EAAE,OAAA,EAAS,QAAQ,UAAY,EAAA,QAAA,EACtC,EAAA,kBAAA,KAAA,CAAA,aAAA,CAAC,QAAK,KAAM,EAAA,QAAA,EAAS,WAAW,YAAa,CAAA,IAAA,EAAM,GAClD,SACH,CAAA;AAAA,MAEF,cACE,CAAG,EAAA,IAAA,CAAK,IAAK,CAAA,KAAA,CAAM,MAAM,CAEtB,GAAA,EAAA,IAAA,CAAK,IAAK,CAAA,KAAA,CAAM,IAAI,CAAQ,IAAA,KAAA,IAAA,CAAK,IAAI,CAAE,CAAA,IAAA,CAAK,IAAI,CAAC,CAAA,CAAA;AAAA,KACxD,CAAA;AAAA,GACD,CAAA,CAAA;AAED,EAAA,2CACG,KAAI,EAAA,EAAA,KAAA,EAAO,EAAE,MAAA,EAAQ,kBACpB,EAAA,kBAAA,KAAA,CAAA,aAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,KAAO,EAAA,SAAA;AAAA,MACP,OAAS,EAAA,EAAE,MAAQ,EAAA,IAAA,EAAM,SAAS,OAAQ,EAAA;AAAA,MAC1C,IAAA;AAAA,MACA,OAAA;AAAA,MACA,YACE,kBAAA,KAAA,CAAA,aAAA,CAAC,KAAI,EAAA,EAAA,SAAA,EAAW,OAAQ,CAAA,KAAA,EAAA,EAAO,4BAE7B,kBAAA,KAAA,CAAA,aAAA,CAAC,IAAK,EAAA,EAAA,EAAA,EAAG,uBAAwB,EAAA,EAAA,uBAAqB,GAAO,GAC/D,CAAA;AAAA,KAAA;AAAA,GAGN,CAAA,CAAA;AAEJ;;;;"}
@@ -0,0 +1,40 @@
1
+ import makeStyles from '@material-ui/core/styles/makeStyles';
2
+
3
+ const columns = [
4
+ {
5
+ title: "Version",
6
+ field: "name",
7
+ type: "string",
8
+ highlight: true
9
+ },
10
+ {
11
+ title: "Repositories",
12
+ field: "repositories",
13
+ type: "string"
14
+ },
15
+ {
16
+ title: "Manifest",
17
+ field: "manifest_digest",
18
+ type: "string"
19
+ },
20
+ {
21
+ title: "Modified",
22
+ field: "last_modified",
23
+ type: "date"
24
+ },
25
+ {
26
+ title: "Size",
27
+ field: "size",
28
+ type: "string"
29
+ }
30
+ ];
31
+ const useStyles = makeStyles((theme) => ({
32
+ empty: {
33
+ padding: theme.spacing(2),
34
+ display: "flex",
35
+ justifyContent: "center"
36
+ }
37
+ }));
38
+
39
+ export { columns, useStyles };
40
+ //# sourceMappingURL=tableHeading.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tableHeading.esm.js","sources":["../../../src/components/JfrogArtifactoryRepository/tableHeading.tsx"],"sourcesContent":["/*\n * Copyright 2024 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { TableColumn } from '@backstage/core-components';\n\nimport makeStyles from '@material-ui/core/styles/makeStyles';\n\nexport const columns: TableColumn[] = [\n {\n title: 'Version',\n field: 'name',\n type: 'string',\n highlight: true,\n },\n {\n title: 'Repositories',\n field: 'repositories',\n type: 'string',\n },\n {\n title: 'Manifest',\n field: 'manifest_digest',\n type: 'string',\n },\n {\n title: 'Modified',\n field: 'last_modified',\n type: 'date',\n },\n {\n title: 'Size',\n field: 'size',\n type: 'string',\n },\n];\n\nexport const useStyles = makeStyles(theme => ({\n empty: {\n padding: theme.spacing(2),\n display: 'flex',\n justifyContent: 'center',\n },\n}));\n"],"names":[],"mappings":";;AAmBO,MAAM,OAAyB,GAAA;AAAA,EACpC;AAAA,IACE,KAAO,EAAA,SAAA;AAAA,IACP,KAAO,EAAA,MAAA;AAAA,IACP,IAAM,EAAA,QAAA;AAAA,IACN,SAAW,EAAA,IAAA;AAAA,GACb;AAAA,EACA;AAAA,IACE,KAAO,EAAA,cAAA;AAAA,IACP,KAAO,EAAA,cAAA;AAAA,IACP,IAAM,EAAA,QAAA;AAAA,GACR;AAAA,EACA;AAAA,IACE,KAAO,EAAA,UAAA;AAAA,IACP,KAAO,EAAA,iBAAA;AAAA,IACP,IAAM,EAAA,QAAA;AAAA,GACR;AAAA,EACA;AAAA,IACE,KAAO,EAAA,UAAA;AAAA,IACP,KAAO,EAAA,eAAA;AAAA,IACP,IAAM,EAAA,MAAA;AAAA,GACR;AAAA,EACA;AAAA,IACE,KAAO,EAAA,MAAA;AAAA,IACP,KAAO,EAAA,MAAA;AAAA,IACP,IAAM,EAAA,QAAA;AAAA,GACR;AACF,EAAA;AAEa,MAAA,SAAA,GAAY,WAAW,CAAU,KAAA,MAAA;AAAA,EAC5C,KAAO,EAAA;AAAA,IACL,OAAA,EAAS,KAAM,CAAA,OAAA,CAAQ,CAAC,CAAA;AAAA,IACxB,OAAS,EAAA,MAAA;AAAA,IACT,cAAgB,EAAA,QAAA;AAAA,GAClB;AACF,CAAE,CAAA;;;;"}
@@ -0,0 +1,11 @@
1
+ const JFROG_ARTIFACTORY_ANNOTATION_IMAGE_NAME = "jfrog-artifactory/image-name";
2
+ const useJfrogArtifactoryAppData = ({ entity }) => {
3
+ const imageName = entity?.metadata.annotations?.[JFROG_ARTIFACTORY_ANNOTATION_IMAGE_NAME] ?? "";
4
+ if (!imageName) {
5
+ throw new Error("'Jfrog Artifactory' annotations are missing");
6
+ }
7
+ return { imageName };
8
+ };
9
+
10
+ export { JFROG_ARTIFACTORY_ANNOTATION_IMAGE_NAME, useJfrogArtifactoryAppData };
11
+ //# sourceMappingURL=useJfrogArtifactoryAppData.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useJfrogArtifactoryAppData.esm.js","sources":["../../src/components/useJfrogArtifactoryAppData.ts"],"sourcesContent":["/*\n * Copyright 2024 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { Entity } from '@backstage/catalog-model';\n\nexport const JFROG_ARTIFACTORY_ANNOTATION_IMAGE_NAME =\n 'jfrog-artifactory/image-name';\n\nexport const useJfrogArtifactoryAppData = ({ entity }: { entity: Entity }) => {\n const imageName =\n entity?.metadata.annotations?.[JFROG_ARTIFACTORY_ANNOTATION_IMAGE_NAME] ??\n '';\n\n if (!imageName) {\n throw new Error(\"'Jfrog Artifactory' annotations are missing\");\n }\n return { imageName };\n};\n"],"names":[],"mappings":"AAiBO,MAAM,uCACX,GAAA,+BAAA;AAEK,MAAM,0BAA6B,GAAA,CAAC,EAAE,MAAA,EAAiC,KAAA;AAC5E,EAAA,MAAM,SACJ,GAAA,MAAA,EAAQ,QAAS,CAAA,WAAA,GAAc,uCAAuC,CACtE,IAAA,EAAA,CAAA;AAEF,EAAA,IAAI,CAAC,SAAW,EAAA;AACd,IAAM,MAAA,IAAI,MAAM,6CAA6C,CAAA,CAAA;AAAA,GAC/D;AACA,EAAA,OAAO,EAAE,SAAU,EAAA,CAAA;AACrB;;;;"}
@@ -0,0 +1,12 @@
1
+ /// <reference types="react" />
2
+ import * as react from 'react';
3
+ import * as _backstage_core_plugin_api from '@backstage/core-plugin-api';
4
+ import { Entity } from '@backstage/catalog-model';
5
+
6
+ declare const jfrogArtifactoryPlugin: _backstage_core_plugin_api.BackstagePlugin<{
7
+ root: _backstage_core_plugin_api.RouteRef<undefined>;
8
+ }, {}, {}>;
9
+ declare const JfrogArtifactoryPage: () => react.JSX.Element;
10
+ declare const isJfrogArtifactoryAvailable: (entity: Entity) => boolean;
11
+
12
+ export { JfrogArtifactoryPage, isJfrogArtifactoryAvailable, jfrogArtifactoryPlugin };
@@ -0,0 +1,2 @@
1
+ export { JfrogArtifactoryPage, isJfrogArtifactoryAvailable, jfrogArtifactoryPlugin } from './plugin.esm.js';
2
+ //# sourceMappingURL=index.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,38 @@
1
+ import { createPlugin, createApiFactory, discoveryApiRef, configApiRef, identityApiRef, createComponentExtension } from '@backstage/core-plugin-api';
2
+ import { jfrogArtifactoryApiRef, JfrogArtifactoryApiClient } from './api/index.esm.js';
3
+ import { JFROG_ARTIFACTORY_ANNOTATION_IMAGE_NAME } from './components/useJfrogArtifactoryAppData.esm.js';
4
+ import { rootRouteRef } from './routes.esm.js';
5
+
6
+ const jfrogArtifactoryPlugin = createPlugin({
7
+ id: "jfrog-artifactory",
8
+ routes: {
9
+ root: rootRouteRef
10
+ },
11
+ apis: [
12
+ createApiFactory({
13
+ api: jfrogArtifactoryApiRef,
14
+ deps: {
15
+ discoveryApi: discoveryApiRef,
16
+ configApi: configApiRef,
17
+ identityApi: identityApiRef
18
+ },
19
+ factory: ({ discoveryApi, configApi, identityApi }) => new JfrogArtifactoryApiClient({ discoveryApi, configApi, identityApi })
20
+ })
21
+ ]
22
+ });
23
+ const JfrogArtifactoryPage = jfrogArtifactoryPlugin.provide(
24
+ createComponentExtension({
25
+ name: "JfrogArtifactoryPage",
26
+ component: {
27
+ lazy: () => import('./components/JfrogArtifactoryDashboardPage/index.esm.js').then(
28
+ (m) => m.JfrogArtifactoryDashboardPage
29
+ )
30
+ }
31
+ })
32
+ );
33
+ const isJfrogArtifactoryAvailable = (entity) => Boolean(
34
+ entity?.metadata.annotations?.[JFROG_ARTIFACTORY_ANNOTATION_IMAGE_NAME]
35
+ );
36
+
37
+ export { JfrogArtifactoryPage, isJfrogArtifactoryAvailable, jfrogArtifactoryPlugin };
38
+ //# sourceMappingURL=plugin.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin.esm.js","sources":["../src/plugin.ts"],"sourcesContent":["/*\n * Copyright 2024 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { Entity } from '@backstage/catalog-model';\nimport {\n configApiRef,\n createApiFactory,\n createComponentExtension,\n createPlugin,\n discoveryApiRef,\n identityApiRef,\n} from '@backstage/core-plugin-api';\n\nimport { JfrogArtifactoryApiClient, jfrogArtifactoryApiRef } from './api';\nimport { JFROG_ARTIFACTORY_ANNOTATION_IMAGE_NAME } from './components/useJfrogArtifactoryAppData';\nimport { rootRouteRef } from './routes';\n\nexport const jfrogArtifactoryPlugin = createPlugin({\n id: 'jfrog-artifactory',\n routes: {\n root: rootRouteRef,\n },\n apis: [\n createApiFactory({\n api: jfrogArtifactoryApiRef,\n deps: {\n discoveryApi: discoveryApiRef,\n configApi: configApiRef,\n identityApi: identityApiRef,\n },\n factory: ({ discoveryApi, configApi, identityApi }) =>\n new JfrogArtifactoryApiClient({ discoveryApi, configApi, identityApi }),\n }),\n ],\n});\n\nexport const JfrogArtifactoryPage = jfrogArtifactoryPlugin.provide(\n createComponentExtension({\n name: 'JfrogArtifactoryPage',\n component: {\n lazy: () =>\n import('./components/JfrogArtifactoryDashboardPage').then(\n m => m.JfrogArtifactoryDashboardPage,\n ),\n },\n }),\n);\n\nexport const isJfrogArtifactoryAvailable = (entity: Entity) =>\n Boolean(\n entity?.metadata.annotations?.[JFROG_ARTIFACTORY_ANNOTATION_IMAGE_NAME],\n );\n"],"names":[],"mappings":";;;;;AA6BO,MAAM,yBAAyB,YAAa,CAAA;AAAA,EACjD,EAAI,EAAA,mBAAA;AAAA,EACJ,MAAQ,EAAA;AAAA,IACN,IAAM,EAAA,YAAA;AAAA,GACR;AAAA,EACA,IAAM,EAAA;AAAA,IACJ,gBAAiB,CAAA;AAAA,MACf,GAAK,EAAA,sBAAA;AAAA,MACL,IAAM,EAAA;AAAA,QACJ,YAAc,EAAA,eAAA;AAAA,QACd,SAAW,EAAA,YAAA;AAAA,QACX,WAAa,EAAA,cAAA;AAAA,OACf;AAAA,MACA,OAAS,EAAA,CAAC,EAAE,YAAA,EAAc,SAAW,EAAA,WAAA,EACnC,KAAA,IAAI,yBAA0B,CAAA,EAAE,YAAc,EAAA,SAAA,EAAW,aAAa,CAAA;AAAA,KACzE,CAAA;AAAA,GACH;AACF,CAAC,EAAA;AAEM,MAAM,uBAAuB,sBAAuB,CAAA,OAAA;AAAA,EACzD,wBAAyB,CAAA;AAAA,IACvB,IAAM,EAAA,sBAAA;AAAA,IACN,SAAW,EAAA;AAAA,MACT,IAAM,EAAA,MACJ,OAAO,yDAA4C,CAAE,CAAA,IAAA;AAAA,QACnD,OAAK,CAAE,CAAA,6BAAA;AAAA,OACT;AAAA,KACJ;AAAA,GACD,CAAA;AACH,EAAA;AAEa,MAAA,2BAAA,GAA8B,CAAC,MAC1C,KAAA,OAAA;AAAA,EACE,MAAA,EAAQ,QAAS,CAAA,WAAA,GAAc,uCAAuC,CAAA;AACxE;;;;"}
@@ -0,0 +1,8 @@
1
+ import { createRouteRef } from '@backstage/core-plugin-api';
2
+
3
+ const rootRouteRef = createRouteRef({
4
+ id: "jfrog-artifactory"
5
+ });
6
+
7
+ export { rootRouteRef };
8
+ //# sourceMappingURL=routes.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"routes.esm.js","sources":["../src/routes.ts"],"sourcesContent":["/*\n * Copyright 2024 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { createRouteRef } from '@backstage/core-plugin-api';\n\nexport const rootRouteRef = createRouteRef({\n id: 'jfrog-artifactory',\n});\n"],"names":[],"mappings":";;AAiBO,MAAM,eAAe,cAAe,CAAA;AAAA,EACzC,EAAI,EAAA,mBAAA;AACN,CAAC;;;;"}
package/package.json ADDED
@@ -0,0 +1,87 @@
1
+ {
2
+ "name": "@backstage-community/plugin-jfrog-artifactory",
3
+ "version": "1.8.2",
4
+ "main": "dist/index.esm.js",
5
+ "types": "dist/index.d.ts",
6
+ "license": "Apache-2.0",
7
+ "publishConfig": {
8
+ "access": "public",
9
+ "main": "dist/index.esm.js",
10
+ "types": "dist/index.d.ts"
11
+ },
12
+ "backstage": {
13
+ "role": "frontend-plugin",
14
+ "supported-versions": "1.28.4",
15
+ "pluginId": "jfrog-artifactory",
16
+ "pluginPackage": "@backstage-community/plugin-jfrog-artifactory",
17
+ "pluginPackages": [
18
+ "@backstage-community/plugin-jfrog-artifactory"
19
+ ]
20
+ },
21
+ "sideEffects": false,
22
+ "scripts": {
23
+ "build": "backstage-cli package build",
24
+ "clean": "backstage-cli package clean",
25
+ "export-dynamic": "janus-cli package export-dynamic-plugin --in-place",
26
+ "lint": "backstage-cli package lint",
27
+ "postpack": "backstage-cli package postpack",
28
+ "postversion": "yarn run export-dynamic",
29
+ "prepack": "backstage-cli package prepack",
30
+ "start": "backstage-cli package start",
31
+ "test": "backstage-cli package test --passWithNoTests --coverage",
32
+ "tsc": "tsc"
33
+ },
34
+ "dependencies": {
35
+ "@backstage/catalog-model": "^1.5.0",
36
+ "@backstage/core-components": "^0.14.9",
37
+ "@backstage/core-plugin-api": "^1.9.3",
38
+ "@backstage/plugin-catalog-react": "^1.12.2",
39
+ "@backstage/theme": "^0.5.6",
40
+ "@janus-idp/shared-react": "2.11.1",
41
+ "@material-ui/core": "^4.9.13",
42
+ "@material-ui/icons": "^4.11.3",
43
+ "@material-ui/lab": "^4.0.0-alpha.45",
44
+ "react-use": "^17.4.0"
45
+ },
46
+ "peerDependencies": {
47
+ "react": "^16.13.1 || ^17.0.0 || ^18.0.0",
48
+ "react-dom": "^16.13.1 || ^17.0.0 || ^18.0.0"
49
+ },
50
+ "devDependencies": {
51
+ "@backstage/cli": "0.26.11",
52
+ "@backstage/core-app-api": "1.14.1",
53
+ "@backstage/dev-utils": "1.0.36",
54
+ "@backstage/test-utils": "1.5.9",
55
+ "@janus-idp/cli": "1.15.0",
56
+ "@redhat-developer/red-hat-developer-hub-theme": "0.2.0",
57
+ "@testing-library/jest-dom": "6.4.8",
58
+ "@testing-library/react": "14.3.1",
59
+ "@testing-library/user-event": "14.5.2",
60
+ "@types/node": "18.19.33",
61
+ "cross-fetch": "4.0.0",
62
+ "msw": "1.3.3",
63
+ "react-router-dom": "^6.26.2"
64
+ },
65
+ "files": [
66
+ "dist",
67
+ "dist-scalprum",
68
+ "config.d.ts",
69
+ "app-config.yaml"
70
+ ],
71
+ "configSchema": "config.d.ts",
72
+ "repository": {
73
+ "type": "git",
74
+ "url": "https://github.com/backstage/community-plugins",
75
+ "directory": "workspaces/jfrog-artifactory/plugins/jfrog-artifactory"
76
+ },
77
+ "keywords": [
78
+ "support:tech-preview",
79
+ "lifecycle:active",
80
+ "backstage",
81
+ "plugin"
82
+ ],
83
+ "homepage": "https://red.ht/rhdh",
84
+ "bugs": "https://github.com/backstage/community-plugins/issues",
85
+ "author": "Red Hat",
86
+ "module": "./dist/index.esm.js"
87
+ }