Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge current main #1784

Merged
merged 556 commits into from
Nov 19, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
556 commits
Select commit Hold shift + click to select a range
11e95c3
chore: wip
alonkeyval Aug 25, 2024
14eac57
Merge pull request #21 from alonkeyval/setup-style-fixes
alonkeyval Aug 25, 2024
2f1e32d
chore: get detected destinations from gql
alonkeyval Aug 25, 2024
40ca78c
chore: wip
alonkeyval Aug 25, 2024
917c399
chore: skeleton component
alonkeyval Aug 25, 2024
d84f144
chore: wip
alonkeyval Aug 26, 2024
508ebc2
chore: wip
alonkeyval Aug 26, 2024
0e29069
chore: wip
alonkeyval Aug 26, 2024
5ce5d5b
chore: wip
alonkeyval Aug 26, 2024
6d25e8d
chore: wip
alonkeyval Aug 26, 2024
5fb7790
Merge pull request #22 from alonkeyval/gen-1316-detected-destinations
alonkeyval Aug 26, 2024
9b97380
chore: wip
alonkeyval Aug 27, 2024
18d6ef9
chore: wip
alonkeyval Aug 27, 2024
f9e2f86
chore: wip
alonkeyval Aug 27, 2024
63ae46d
chore: wip
alonkeyval Aug 27, 2024
722b376
chore: wip
alonkeyval Aug 27, 2024
6ae8384
chore: fixed pr commentd
alonkeyval Aug 27, 2024
99161bf
Merge pull request #23 from alonkeyval/gen-1340-connect-form-validation
alonkeyval Aug 27, 2024
608d6a8
chore: wip
alonkeyval Sep 3, 2024
8266ac9
chore: wip
alonkeyval Sep 3, 2024
66d11f6
chore: tidy
alonkeyval Sep 3, 2024
26ccfce
Merge pull request #24 from alonkeyval/gen-1359-merge-upstream
alonkeyval Sep 3, 2024
ed21ccf
chore: wip
alonkeyval Sep 3, 2024
7f17035
Merge pull request #25 from alonkeyval/gen-1341-delete-old-setup=files
alonkeyval Sep 3, 2024
9bc0049
chore: overview header
alonkeyval Sep 3, 2024
4d1aa51
chore: wip
alonkeyval Sep 3, 2024
5fa8896
chore: wip
alonkeyval Sep 3, 2024
b41b9fa
Merge pull request #26 from alonkeyval/gen-1136-overview-header
alonkeyval Sep 3, 2024
a9959b9
fix: add react types
alonkeyval Sep 11, 2024
14aba8f
feat: add destination gqlgen and custom query from client
alonkeyval Sep 12, 2024
fed6a91
Merge pull request #27 from alonkeyval/gen-1361-get-current-cp
alonkeyval Sep 12, 2024
f71866f
feat: query actual sources
alonkeyval Sep 12, 2024
cc6d206
Merge pull request #28 from alonkeyval/gen-1400-get-actual-sources
alonkeyval Sep 12, 2024
9c35d68
chore: query actions
alonkeyval Sep 15, 2024
67487bb
Merge pull request #29 from alonkeyval/gen-1402-get-actual-actions
alonkeyval Sep 15, 2024
7099ef9
chore: insert destinations and action to cp and create resolvers
alonkeyval Sep 15, 2024
a641098
chore: insert actual source to cp
alonkeyval Sep 15, 2024
c60eb18
chore: generate resolver for cp namespaces
alonkeyval Sep 15, 2024
15921b5
Merge pull request #30 from alonkeyval/gen-1403-refactor-gql-schema
alonkeyval Sep 15, 2024
65ebab8
chore: change api to new schema and delete unused files
alonkeyval Sep 15, 2024
9ffcfbd
Merge pull request #31 from alonkeyval/gen-1405-refactor-gql-client
alonkeyval Sep 15, 2024
6885f8b
Merge branch 'main' of github.com:keyval-dev/odigos into gen-1406-pul…
alonkeyval Sep 15, 2024
b75bbd4
Merge pull request #32 from alonkeyval/gen-1406-pull-main
alonkeyval Sep 15, 2024
c5d6b7b
chore: wip
alonkeyval Sep 15, 2024
70e40ac
chore: match button and dropdown to ds
alonkeyval Sep 16, 2024
f7160f8
chore: wip
alonkeyval Sep 16, 2024
8699299
chore: wip
alonkeyval Sep 16, 2024
7a53647
chore: wip
alonkeyval Sep 17, 2024
af3a85d
chore: fixed sources issue
alonkeyval Sep 17, 2024
e9cfa83
chore: remove clg
alonkeyval Sep 17, 2024
60c197c
chore: wip
alonkeyval Sep 17, 2024
568a0ad
Merge pull request #33 from alonkeyval/design-system-fixs
alonkeyval Sep 17, 2024
dd8f75b
chore: init sources nodes
alonkeyval Sep 17, 2024
4bdad2a
chore: init actions and destination nodes
alonkeyval Sep 17, 2024
4e0b17f
chore: wip
alonkeyval Sep 17, 2024
8161a58
chore: added edges
alonkeyval Sep 18, 2024
078fc5b
chore: wip
alonkeyval Sep 18, 2024
5250a01
chore: wip
alonkeyval Sep 18, 2024
d1b9a68
Delete go.work
alonkeyval Sep 18, 2024
2714683
chore: move data flow to design stem
alonkeyval Sep 18, 2024
feb7402
Merge pull request #34 from alonkeyval/gen-1415-data-flow-nodes
alonkeyval Sep 18, 2024
afb5a5c
refactor: init zustand
alonkeyval Sep 23, 2024
1f7f0c3
chore: delete app store
alonkeyval Sep 23, 2024
cd48604
Merge pull request #35 from alonkeyval/gen-1421-refactor-to-zustand
alonkeyval Sep 23, 2024
8eda48b
chore: init overview action header
alonkeyval Sep 23, 2024
f84f1b4
chore: add options
alonkeyval Sep 23, 2024
bba5c10
Merge pull request #36 from alonkeyval/gen-1427-add-new-entity
alonkeyval Sep 23, 2024
3bec324
chore: wip
alonkeyval Sep 24, 2024
ab23654
chore: wip
alonkeyval Sep 24, 2024
77b6086
chore: wip
alonkeyval Sep 25, 2024
12f7e5a
chore: wip
alonkeyval Sep 25, 2024
907ad4f
chore: refactor code
alonkeyval Sep 25, 2024
4c41bc6
Merge pull request #37 from alonkeyval/gen-1428-add-new-source
alonkeyval Sep 25, 2024
76cfe63
chore: wip
alonkeyval Sep 26, 2024
a76199a
Merge pull request #38 from alonkeyval/gen-1446-add-destination-from-…
alonkeyval Sep 26, 2024
6fcbeaf
chore: add new node
alonkeyval Sep 26, 2024
2d8bb1d
Merge pull request #39 from alonkeyval/gen-1449-add-first-action-node
alonkeyval Sep 26, 2024
e44b87d
chore: init auto-complete input
alonkeyval Sep 26, 2024
174d8af
wip: fixed style
alonkeyval Oct 6, 2024
56a1838
Merge pull request #40 from alonkeyval/gen-1450-add-action-modal
alonkeyval Oct 6, 2024
5d4d0af
wip: init drawer architcture
alonkeyval Oct 6, 2024
a627987
chore: add id to entities on overview
alonkeyval Oct 6, 2024
fcc6e7f
wip: on node click
alonkeyval Oct 7, 2024
7dddc5e
wip: clean up code
alonkeyval Oct 7, 2024
99ea932
wip: drawer header and footer
alonkeyval Oct 7, 2024
2c8e22f
chore: drawer footer
alonkeyval Oct 7, 2024
e012609
wip: card details component
alonkeyval Oct 7, 2024
49a12ff
wip: smooth transmition between components
alonkeyval Oct 8, 2024
63a4852
wip: fixed pr comments
alonkeyval Oct 8, 2024
9c92b0b
wip: fix pr comments
alonkeyval Oct 8, 2024
68a424c
chore: update source api call and custom hook
alonkeyval Oct 8, 2024
cec9e1f
wip: chore
alonkeyval Oct 8, 2024
647455e
wip: delete source
alonkeyval Oct 8, 2024
b0b1f31
Merge pull request #41 from alonkeyval/gen-1471-edit-source
alonkeyval Oct 9, 2024
3fd5840
feat: delete entity modal
alonkeyval Oct 9, 2024
071234c
wip: close with key board
alonkeyval Oct 9, 2024
9742979
Merge pull request #42 from alonkeyval/gen-1482-delete-entity-modal
alonkeyval Oct 9, 2024
c332365
feat: init edit destination
alonkeyval Oct 13, 2024
a2f8209
wip: destination drawer
alonkeyval Oct 13, 2024
1d4e5ff
wip: destintion card details
alonkeyval Oct 13, 2024
9e5d25e
chore: get updated destinatoin
alonkeyval Oct 14, 2024
18be997
wip : updated destinatoin
alonkeyval Oct 14, 2024
80135c1
chore: update current item
alonkeyval Oct 14, 2024
f39d37e
wip: split code to chunks
alonkeyval Oct 14, 2024
6f1ba85
chore: wip
alonkeyval Oct 14, 2024
5a70094
chore: wip
alonkeyval Oct 14, 2024
45ed9f2
chore: wip
alonkeyval Oct 15, 2024
eb3ad4a
chore: spilt code to hooks
alonkeyval Oct 15, 2024
58f34d0
chore: checkboxs list disabled
alonkeyval Oct 15, 2024
ee71844
wip: reset state when cancel
alonkeyval Oct 15, 2024
f77b5c3
chore: change file name
alonkeyval Oct 15, 2024
1035692
wip: show inputs values on edit mode
alonkeyval Oct 15, 2024
6fedc1c
feat: show override name in overview
alonkeyval Oct 20, 2024
c25c631
Merge pull request #1 from odigos-io/main
BenElferink Oct 20, 2024
243f7a9
chore: wip
alonkeyval Oct 20, 2024
4a4abd4
chore: types
alonkeyval Oct 20, 2024
d5b4f9b
wip: reset after delete
alonkeyval Oct 20, 2024
09fe7af
wip: use file from guards
alonkeyval Oct 20, 2024
d3cec0b
Merge pull request #43 from alonkeyval/gen-1503-edit-destination
alonkeyval Oct 20, 2024
5e8f0c3
chore: connect dest edges
alonkeyval Oct 20, 2024
c4ae888
chore: refactor code
alonkeyval Oct 21, 2024
48c193a
chore: move destination types to hook
alonkeyval Oct 21, 2024
2bd63d2
Merge pull request #44 from alonkeyval/gen-1538-create-destination-re…
alonkeyval Oct 21, 2024
6377cc3
Merge branch 'main' of github.com:keyval-dev/odigos into gen-1096-pro…
alonkeyval Oct 21, 2024
12046ba
Refactor old ui to new product design (#1605)
alonkeyval Oct 21, 2024
6037f4c
Merge remote-tracking branch 'odigos/new-ui' into gen-1511-new-ui
BenElferink Oct 21, 2024
62934de
[GEN-1539] Refactor action api to gql (#1606)
alonkeyval Oct 22, 2024
2fb14a5
chore: merge new ui
alonkeyval Oct 22, 2024
d456363
[GEN-1540] Add update action mutation (#1607)
alonkeyval Oct 22, 2024
02682f9
Merge branch 'new-ui' of https://github.com/odigos-io/odigos into gen…
BenElferink Oct 22, 2024
a1c6cf8
Merge branch 'new-ui' of github.com:keyval-dev/odigos into gen-1096-p…
alonkeyval Oct 22, 2024
522e782
feat(frontend): added actions form, and fixed bugs: empty inputs, sea…
BenElferink Oct 22, 2024
f435deb
[GEN-1541] Add delete action mutation (#1609)
alonkeyval Oct 22, 2024
cf28c50
Merge branch 'new-ui' of github.com:keyval-dev/odigos into gen-1096-p…
alonkeyval Oct 22, 2024
9dbdc21
Lint rules (#1610)
alonkeyval Oct 22, 2024
068f009
Merge branch 'new-ui' of github.com:keyval-dev/odigos into gen-1096-p…
alonkeyval Oct 22, 2024
a55f35b
fix: KeyValueInputsList would not always call onChange
BenElferink Oct 22, 2024
619bb6d
feat: custom fields with state management
BenElferink Oct 22, 2024
389fc46
fix: semicolon
BenElferink Oct 22, 2024
2487549
fix: docs link
BenElferink Oct 22, 2024
9e5224b
fix: frament & imports
BenElferink Oct 22, 2024
e4a8350
fix: MONITORING_OPTIONS from global consts
BenElferink Oct 22, 2024
a908130
fix: use const, not string
BenElferink Oct 22, 2024
38e862f
Merge pull request #2 from BenElferink/gen-1515-dynamic-action-form
BenElferink Oct 22, 2024
31f1db3
fix: dynamic signals for actions
BenElferink Oct 22, 2024
bc3bad3
fix: drawer & modal widths
BenElferink Oct 22, 2024
f1ac07b
[GEN-1546] Add delete attr new api (#1612)
alonkeyval Oct 22, 2024
1052f13
chore: wip
alonkeyval Oct 22, 2024
f10f9a0
Merge branch 'new-ui' of github.com:keyval-dev/odigos into gen-1096-p…
alonkeyval Oct 22, 2024
254427a
[GEN-1546] Add pii masking new api (#1613)
alonkeyval Oct 22, 2024
c769731
[GEN-1513]: actions modal form (#1608)
BenElferink Oct 22, 2024
77b20f0
Merge branch 'new-ui' of github.com:keyval-dev/odigos into gen-1096-p…
alonkeyval Oct 22, 2024
89a6594
fix: stringify for graphql
BenElferink Oct 22, 2024
9d260f4
Merge remote-tracking branch 'odigos/new-ui' into gen-1515-fix-string…
BenElferink Oct 22, 2024
19eb1fe
[GEN-1515]: fix stringify for graphql (#1615)
BenElferink Oct 27, 2024
446c37a
Merge branch 'main' into new-ui
BenElferink Oct 27, 2024
944480f
[GEN-1547] Add error sampler api (#1629)
alonkeyval Oct 27, 2024
089f627
Merge branch 'new-ui' of github.com:keyval-dev/odigos into gen-1096-p…
alonkeyval Oct 27, 2024
2637c1e
[GEN-1555] Add new latency sampler api (#1630)
alonkeyval Oct 27, 2024
2e1eafe
Merge branch 'new-ui' of github.com:keyval-dev/odigos into gen-1096-p…
alonkeyval Oct 27, 2024
4cedea9
[GEN-1557] Add prod sampler new api (#1631)
alonkeyval Oct 27, 2024
ae6bc8a
Merge branch 'new-ui' of github.com:keyval-dev/odigos into gen-1096-p…
alonkeyval Oct 27, 2024
40f2215
[GEN-1559] Add new gql api for rename attr action (#1634)
alonkeyval Oct 27, 2024
b4f106f
Merge branch 'new-ui' of github.com:keyval-dev/odigos into gen-1096-p…
alonkeyval Oct 27, 2024
2d4b1bb
[GEN-1517]: actions add via gql (#1635)
BenElferink Oct 27, 2024
eff6d90
[GEN-1529]: latency sampler (#1644)
BenElferink Oct 28, 2024
ec3beee
Merge branch 'new-ui' of github.com:keyval-dev/odigos into gen-1096-p…
alonkeyval Oct 28, 2024
1ea39de
[GEN-1521]: update action - AddClusterInfo (#1646)
BenElferink Oct 28, 2024
f3c1a26
[GEN-1579]: button outline (#1647)
BenElferink Oct 28, 2024
3bb2338
[GEN-1580]: useKeyDown hook fixed (#1648)
BenElferink Oct 28, 2024
5dbfe5a
Merge branch 'new-ui' of github.com:keyval-dev/odigos into gen-1096-p…
alonkeyval Oct 29, 2024
2a83b84
[GEN-1591]: make "add action" in overview functional (#1650)
BenElferink Oct 29, 2024
9ac0d13
[GEN-1583]: fix validations for "add actions" custom fields (#1651)
BenElferink Oct 29, 2024
33cb867
[GEN-1521]: update actions (#1652)
BenElferink Oct 29, 2024
d42c32b
[GEN-1593]: upgraded "status" component (#1655)
BenElferink Oct 29, 2024
75c1212
Merge branch 'new-ui' of github.com:keyval-dev/odigos into gen-1096-p…
alonkeyval Oct 30, 2024
c15a6ba
[GEN-1574]: delete actions (#1657)
BenElferink Oct 30, 2024
fa609c3
[GEN-1592] Add instrumentation rules to gql (#1659)
alonkeyval Oct 30, 2024
78eda6e
[GEN-1582]: UI tweaks (#1658)
BenElferink Oct 30, 2024
6a91aba
[GEN-1603]: add rules column to overview (#1661)
BenElferink Oct 30, 2024
fa5c457
fix: autocompleted notification type (#1664)
BenElferink Oct 31, 2024
93bbe30
[GEN-1604]: create & get rules (#1665)
BenElferink Oct 31, 2024
461ab5f
Merge branch 'new-ui' of github.com:keyval-dev/odigos into gen-1096-p…
alonkeyval Nov 3, 2024
c270e78
[GEN-1616] Add delete destination to gql (#1669)
alonkeyval Nov 3, 2024
9358337
[GEN-1601]: refetch after create/update destination (#1668)
BenElferink Nov 3, 2024
08eacfe
[GEN-1581]: lists auto-focus & disable delete (#1670)
BenElferink Nov 3, 2024
240730f
[GEN-1613]: delete destination (#1672)
BenElferink Nov 3, 2024
9748362
[GEN-1620] Add metrics to gql (#1675)
alonkeyval Nov 3, 2024
a4a5d34
[GEN-1584]: fix close modal & animations (#1676)
BenElferink Nov 3, 2024
d933798
[GEN-1536]: scramble secret values (#1677)
BenElferink Nov 3, 2024
b80af5f
Merge branch 'new-ui' of github.com:keyval-dev/odigos into gen-1096-p…
alonkeyval Nov 3, 2024
2c9c79b
[GEN-1621]: add cancel modal & breakdown overview-drawer files (#1682)
BenElferink Nov 4, 2024
0dab5bd
[GEN-1626]: add mockup for overview filters (#1683)
BenElferink Nov 4, 2024
702e71a
[GEN-1641]: added UI for metrics (#1688)
BenElferink Nov 5, 2024
6eed504
Merge branch 'new-ui' of github.com:keyval-dev/odigos into gen-1096-p…
alonkeyval Nov 5, 2024
577ef58
[GEN-1646] Add destination condition and type (#1692)
alonkeyval Nov 5, 2024
0c39a29
[GEN-1642]: get metrics from API (with mockup for dev mode) (#1693)
BenElferink Nov 5, 2024
a816fda
[GEN-1624]: refactor existing components in preparation for notificat…
BenElferink Nov 6, 2024
c790156
[GEN-1670]: kill redux, use new toasts (#1699)
BenElferink Nov 6, 2024
d9292ff
[GEN-1671]: toast animations + enriched messages (#1701)
BenElferink Nov 6, 2024
e15ea9a
[GEN-1672]: add logic for "go to details" button of toast notificatio…
BenElferink Nov 7, 2024
9f25eb4
[GEN-1668]: add handling for "dirty forms" (#1704)
BenElferink Nov 7, 2024
67d25e9
Merge branch 'new-ui' of github.com:keyval-dev/odigos into gen-1096-p…
alonkeyval Nov 10, 2024
f596073
[GEN-1665]: formatting with prettier instead of eslint (#1705)
BenElferink Nov 10, 2024
b3b5007
[GEN-1629]: boolean store (isPolling) (#1706)
BenElferink Nov 10, 2024
0bbd34b
[GEN-1679]: added useSourceCRUD hook (#1720)
BenElferink Nov 10, 2024
d9e8582
[GEN-1669] delete unused files (#1721)
alonkeyval Nov 10, 2024
f32923b
[GEN-1680]: added new "toggle buttons" component (#1723)
BenElferink Nov 10, 2024
2747abd
Merge branch 'new-ui' of github.com:keyval-dev/odigos into gen-1096-p…
alonkeyval Nov 10, 2024
8771192
[GEN-1691] load styled on server (#1725)
alonkeyval Nov 10, 2024
e7346c4
Merge branch 'new-ui' of github.com:keyval-dev/odigos into gen-1096-p…
alonkeyval Nov 11, 2024
5e3bb02
[GEN-1694]: search overview entities (#1731)
BenElferink Nov 11, 2024
b314d77
[GEN-1703] merge main (#1732)
alonkeyval Nov 11, 2024
c43423b
Merge branch 'new-ui' of github.com:keyval-dev/odigos into gen-1096-p…
alonkeyval Nov 11, 2024
eec6c7c
chore: merge main
alonkeyval Nov 11, 2024
ec4f8c0
chore: update yarn lock
alonkeyval Nov 11, 2024
3b81553
chore: remove cache
alonkeyval Nov 11, 2024
a3ae102
fix: chagne gql to base url
alonkeyval Nov 11, 2024
47c5ff6
chore: fixed url
alonkeyval Nov 11, 2024
a92901f
fix: base url
alonkeyval Nov 11, 2024
228c444
fix: base url
alonkeyval Nov 11, 2024
124c884
chore: fix base url for gql
alonkeyval Nov 11, 2024
a8c1946
chore: wip
alonkeyval Nov 11, 2024
c6faa49
chore: defualt rout
alonkeyval Nov 11, 2024
3e130ef
chore: change origin
alonkeyval Nov 11, 2024
493eeb4
chore" use client
alonkeyval Nov 11, 2024
17bd6f4
chore: wip
alonbraymok Nov 11, 2024
5220cca
chore: wip
alonbraymok Nov 12, 2024
0de537e
chore: check if window is define
alonbraymok Nov 12, 2024
289a586
chore: change local gql
alonbraymok Nov 12, 2024
4e5b199
chore: wip
alonbraymok Nov 12, 2024
65cf118
chore: remove fetch from home path
alonbraymok Nov 12, 2024
0372219
chore: use client on config
alonbraymok Nov 12, 2024
e5e0290
chore: wip
alonbraymok Nov 12, 2024
f37d3e6
chore: revert config
alonbraymok Nov 12, 2024
ab4652a
Merge branch 'main' into merge-main
alonkeyval Nov 12, 2024
5dcb27c
chore: revert endpoint to main
alonbraymok Nov 12, 2024
00e12b8
Merge branch 'merge-main' of github.com:alonkeyval/odigos into merge-…
alonbraymok Nov 12, 2024
cfb80a4
chore: delete frontend tests
alonbraymok Nov 12, 2024
db7e79e
Merge branch 'odigos-ui-beta' of github.com:keyval-dev/odigos into od…
alonbraymok Nov 12, 2024
cd44f1f
Merge branch 'odigos-ui-beta' of github.com:keyval-dev/odigos into od…
alonbraymok Nov 17, 2024
001c97d
Merge branch 'odigos-ui-beta' of github.com:keyval-dev/odigos into od…
alonbraymok Nov 17, 2024
b72d059
Merge branch 'odigos-ui-beta' of github.com:keyval-dev/odigos into od…
alonbraymok Nov 17, 2024
d044d22
chore: fix ui bugs
alonbraymok Nov 17, 2024
7503de9
Merge branch 'odigos-ui-beta' of github.com:keyval-dev/odigos into od…
alonbraymok Nov 17, 2024
314512f
Merge branch 'odigos-ui-beta' of github.com:keyval-dev/odigos into od…
alonbraymok Nov 17, 2024
34b035b
Merge branch 'odigos-ui-beta' of github.com:keyval-dev/odigos into od…
alonbraymok Nov 18, 2024
4ee5e6c
Merge branch 'odigos-ui-beta' of github.com:keyval-dev/odigos into od…
alonbraymok Nov 19, 2024
efbc71c
Merge branch 'main' of github.com:keyval-dev/odigos into merge-curren…
alonbraymok Nov 19, 2024
e9f8442
chore: update docker version node
alonbraymok Nov 19, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 24 additions & 22 deletions common/envOverwrite/overwriter.go
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,6 @@ func GetRelevantEnvVarsKeys() []string {
return keys
}


// returns the current value that should be populated in a specific environment variable.
// if we should not patch the value, returns nil.
// the are 2 parts to the environment value: odigos part and user part.
Expand Down Expand Up @@ -111,6 +110,21 @@ func GetPatchedEnvValue(envName string, observedValue string, currentSdk *common
}
}

// temporary fix clean up observed value from the known webhook injected value
parts := strings.Split(observedValue, envMetadata.delim)
ignoreEnvValue := "-javaagent:/opt/sre-agent/sre-agent.jar"
newValues := []string{}
for _, part := range parts {
if part == ignoreEnvValue {
continue
}
if strings.TrimSpace(part) == "" {
continue
}
newValues = append(newValues, part)
}
observedValue = strings.Join(newValues, envMetadata.delim)

// Scenario 3: both odigos and user defined values are present
// happens: when the user set some values to this env (either via manifest or dockerfile) and odigos instrumentation is applied.
// action: we want to keep the user defined values and upsert the odigos value.
Expand All @@ -119,25 +133,8 @@ func GetPatchedEnvValue(envName string, observedValue string, currentSdk *common
if sdkEnvValue == desiredOdigosPart {
// shortcut, the value is already patched
// both the odigos part equals to the new value, and the user part we want to keep
// Exception: if there is a webhook involved that inject the env value,
// we need to remove duplicate values, otherwise it will grow indefinitely in each iteration
parts := strings.Split(observedValue, envMetadata.delim)
specialEnvValue := "-javaagent:/opt/sre-agent/sre-agent.jar"
specialFound := false
newValues := []string{}
for _, part := range parts {
if part == specialEnvValue {
if specialFound {
continue
}
specialFound = true
}
if strings.TrimSpace(part) == "" {
continue
}
newValues = append(newValues, part)
}
observedValue = strings.Join(newValues, envMetadata.delim)
// Exception: for a value that is injected by a webhook, we don't want to add it to
// the deployment, as the webhook will manage when it is needed.
return &observedValue
} else {
// The environment variable is patched by some other odigos sdk.
Expand All @@ -152,8 +149,13 @@ func GetPatchedEnvValue(envName string, observedValue string, currentSdk *common
// Scenario 4: only user defined values are present
// happens: when the user set some values to this env (either via manifest or dockerfile) and odigos instrumentation not yet applied.
// action: we want to keep the user defined values and append the odigos value.
mergedEnvValue := observedValue + envMetadata.delim + desiredOdigosPart
return &mergedEnvValue
if observedValue == "" {
return &desiredOdigosPart
} else {
// no user defined values, just append the odigos value
mergedEnvValue := observedValue + envMetadata.delim + desiredOdigosPart
return &mergedEnvValue
}
}

func ValToAppend(envName string, sdk common.OtelSdk) (string, bool) {
Expand Down
14 changes: 11 additions & 3 deletions common/envOverwrite/overwriter_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -96,23 +96,31 @@ func TestGetPatchedEnvValue(t *testing.T) {
observedValue: fmt.Sprintf("%s %s %s %s", specialEnvValueJava, specialEnvValueJava, specialEnvValueJava, javaToolsNativeCommunity),
sdk: &common.OtelSdkNativeCommunity,
programmingLanguage: common.JavaProgrammingLanguage,
patchedValueExpected: specialEnvValueJava + " " + javaToolsNativeCommunity,
patchedValueExpected: javaToolsNativeCommunity,
},
{
name: "multiple spaces in special env value",
envName: "JAVA_TOOL_OPTIONS",
observedValue: fmt.Sprintf("%s %s %s", specialEnvValueJava, specialEnvValueJava, javaToolsNativeCommunity),
sdk: &common.OtelSdkNativeCommunity,
programmingLanguage: common.JavaProgrammingLanguage,
patchedValueExpected: specialEnvValueJava + " " + javaToolsNativeCommunity,
patchedValueExpected: javaToolsNativeCommunity,
},
{
name: "tabs in special env value",
envName: "JAVA_TOOL_OPTIONS",
observedValue: fmt.Sprintf("%s \t %s \t %s", specialEnvValueJava, specialEnvValueJava, javaToolsNativeCommunity),
sdk: &common.OtelSdkNativeCommunity,
programmingLanguage: common.JavaProgrammingLanguage,
patchedValueExpected: specialEnvValueJava + " " + javaToolsNativeCommunity,
patchedValueExpected: javaToolsNativeCommunity,
},
{
name: "special env with only user value",
envName: "JAVA_TOOL_OPTIONS",
observedValue: fmt.Sprintf("%s ", specialEnvValueJava),
sdk: &common.OtelSdkNativeCommunity,
programmingLanguage: common.JavaProgrammingLanguage,
patchedValueExpected: javaToolsNativeCommunity,
},
}

Expand Down
7 changes: 3 additions & 4 deletions frontend/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,15 +1,14 @@
FROM --platform=$BUILDPLATFORM node:20.2.0 AS deps
FROM --platform=$BUILDPLATFORM node:20.9.0 AS deps
WORKDIR /app
COPY frontend/webapp/package.json frontend/webapp/yarn.lock ./
RUN yarn install

FROM --platform=$BUILDPLATFORM node:20.2.0 AS builder
FROM --platform=$BUILDPLATFORM node:20.9.0 AS builder
WORKDIR /webapp
COPY --from=deps /app/node_modules ./node_modules
COPY frontend/webapp .
RUN yarn build


FROM --platform=$BUILDPLATFORM golang:1.22 AS backend
WORKDIR /app
COPY . .
Expand All @@ -23,4 +22,4 @@ FROM gcr.io/distroless/static:nonroot
WORKDIR /app
COPY --from=backend /app/frontend/odigos-ui .
USER 65532:65532
ENTRYPOINT ["/app/odigos-ui", "--address", "0.0.0.0"]
ENTRYPOINT ["/app/odigos-ui", "--address", "0.0.0.0"]
5 changes: 4 additions & 1 deletion odiglet/cmd/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ import (
"context"
"os"

detector "github.com/odigos-io/odigos/odiglet/pkg/detector"
"github.com/odigos-io/odigos/odiglet/pkg/ebpf/sdks"
"github.com/odigos-io/odigos/odiglet/pkg/instrumentation/fs"
detector "github.com/odigos-io/odigos/odiglet/pkg/detector"

"github.com/kubevirt/device-plugin-manager/pkg/dpm"
"github.com/odigos-io/odigos/common"
Expand All @@ -28,6 +28,9 @@ import (
)

func odigletInitPhase() {
if err := log.Init(); err != nil {
panic(err)
}
err := fs.CopyAgentsDirectoryToHost()
if err != nil {
log.Logger.Error(err, "Failed to copy agents directory to host")
Expand Down
76 changes: 70 additions & 6 deletions odiglet/pkg/instrumentation/fs/agents.go
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
package fs

import (
"crypto/sha256"
"fmt"
"io"
"os"
"os/exec"
"path/filepath"
"strings"
"syscall"

"github.com/odigos-io/odigos/odiglet/pkg/log"
Expand All @@ -24,7 +28,7 @@ func CopyAgentsDirectoryToHost() error {
// so we will just remove it's content

// We kept the following list of files to avoid removing instrumentations that are already loaded in the process memory
filesToKeepMap := map[string]struct{}{
filesToKeep := map[string]struct{}{
"/var/odigos/nodejs-ebpf/build/Release/dtrace-injector-native.node": {},
"/var/odigos/nodejs-ebpf/build/Release/obj.target/dtrace-injector-native.node": {},
"/var/odigos/nodejs-ebpf/build/Release/.deps/Release/dtrace-injector-native.node.d": {},
Expand All @@ -34,13 +38,18 @@ func CopyAgentsDirectoryToHost() error {
"/var/odigos/python-ebpf/pythonUSDT.abi3.so": {},
}

err := removeFilesInDir(hostDir, filesToKeepMap)
err := removeChangedFilesFromKeepMap(filesToKeep, containerDir, hostDir)
if err != nil {
log.Logger.Error(err, "Error getting changed files")
}

err = removeFilesInDir(hostDir, filesToKeep)
if err != nil {
log.Logger.Error(err, "Error removing instrumentation directory from host")
return err
}

err = copyDirectories(containerDir, hostDir, filesToKeepMap)
err = copyDirectories(containerDir, hostDir, filesToKeep)
if err != nil {
log.Logger.Error(err, "Error copying instrumentation directory to host")
return err
Expand Down Expand Up @@ -73,7 +82,62 @@ func CopyAgentsDirectoryToHost() error {
return nil
}

func ShouldRecreateAllCFiles() bool {
value, exists := os.LookupEnv("RECREATE_ALL_C_FILES")
return exists && value == "true"
func removeChangedFilesFromKeepMap(filesToKeepMap map[string]struct{}, containerDir string, hostDir string) error {
for hostPath := range filesToKeepMap {
// Convert host path to container path
containerPath := strings.Replace(hostPath, hostDir, containerDir, 1)

// Check if both files exist
hostInfo, hostErr := os.Stat(hostPath)
containerInfo, containerErr := os.Stat(containerPath)

// If either file doesn't exist, mark as changed and remove from filesToKeepMap
if hostErr != nil || containerErr != nil {
delete(filesToKeepMap, hostPath)
log.Logger.V(0).Info("File marked for deletion (missing)", "file", hostPath)
continue
}

// If sizes are different, mark as changed
if hostInfo.Size() != containerInfo.Size() {
delete(filesToKeepMap, hostPath)
log.Logger.V(0).Info("File marked for deletion (size mismatch)", "file", hostPath)
continue
}

// Compare file hashes
hostHash, err := calculateFileHash(hostPath)
if err != nil {
return fmt.Errorf("error calculating hash for host file %s: %v", hostPath, err)
}

containerHash, err := calculateFileHash(containerPath)
if err != nil {
return fmt.Errorf("error calculating hash for container file %s: %v", containerPath, err)
}

// If hashes are different, mark as changed
if hostHash != containerHash {
delete(filesToKeepMap, hostPath)
log.Logger.V(0).Info("File marked for deletion (content mismatch)", "file", hostPath)
}
}

return nil
}

// calculateFileHash computes the SHA-256 hash of a file
func calculateFileHash(filePath string) (string, error) {
file, err := os.Open(filePath)
if err != nil {
return "", err
}
defer file.Close()

hasher := sha256.New()
if _, err := io.Copy(hasher, file); err != nil {
return "", err
}

return fmt.Sprintf("%x", hasher.Sum(nil)), nil
}
13 changes: 6 additions & 7 deletions odiglet/pkg/instrumentation/fs/copy.go
Original file line number Diff line number Diff line change
Expand Up @@ -27,17 +27,16 @@ func getNumberOfWorkers() int {
return min(maxWorkers, max(1, runtime.NumCPU()/4))
}

func copyDirectories(srcDir string, destDir string, filesToKeepMap map[string]struct{}) error {
func copyDirectories(srcDir string, destDir string, filesToKeep map[string]struct{}) error {
start := time.Now()

hostContainEbpfDir := HostContainsEbpfDir(destDir)
shouldRecreateCFiles := ShouldRecreateAllCFiles()

// If the host directory NOT contains ebpf directories OR we should recreate C files, we copy all files
CopyCFiles := !hostContainEbpfDir || shouldRecreateCFiles
// If the host directory NOT contains ebpf directories we copy all files
CopyCFiles := !hostContainEbpfDir
log.Logger.V(0).Info("Copying instrumentation files to host", "srcDir", srcDir, "destDir", destDir, "CopyCFiles", CopyCFiles)

files, err := getFiles(srcDir, CopyCFiles, filesToKeepMap)
files, err := getFiles(srcDir, CopyCFiles, filesToKeep)
if err != nil {
return err
}
Expand Down Expand Up @@ -85,15 +84,15 @@ func worker(fileChan <-chan string, sourceDir, destDir string, wg *sync.WaitGrou
}
}

func getFiles(dir string, CopyCFiles bool, filesToKeepMap map[string]struct{}) ([]string, error) {
func getFiles(dir string, CopyCFiles bool, filesToKeep map[string]struct{}) ([]string, error) {
var files []string
err := filepath.WalkDir(dir, func(path string, d fs.DirEntry, err error) error {
if err != nil {
return err
}
if !d.IsDir() {
if !CopyCFiles {
if _, found := filesToKeepMap[strings.Replace(path, "/instrumentations/", "/var/odigos/", 1)]; found {
if _, found := filesToKeep[strings.Replace(path, "/instrumentations/", "/var/odigos/", 1)]; found {
log.Logger.V(0).Info("Skipping copying file", "file", path)
return nil
}
Expand Down
18 changes: 7 additions & 11 deletions odiglet/pkg/instrumentation/fs/remove.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,21 +9,17 @@ import (
)

func removeFilesInDir(hostDir string, filesToKeep map[string]struct{}) error {
shouldRecreateCFiles := ShouldRecreateAllCFiles()
log.Logger.V(0).Info("Removing files in the host directory", "hostDir", hostDir, "shouldRecreateCFiles", shouldRecreateCFiles)
log.Logger.V(0).Info("Removing files in the host directory", "hostDir", hostDir)

// Mark directories as protected if they contain a file that needs to be preserved.
// If C files should be recreated, skip marking any directories as protected.
protectedDirs := make(map[string]bool)
if !shouldRecreateCFiles {
for file := range filesToKeep {
dir := filepath.Dir(file)
for dir != hostDir {
protectedDirs[dir] = true
dir = filepath.Dir(dir)
}
protectedDirs[hostDir] = true // Protect the main directory
for file := range filesToKeep {
dir := filepath.Dir(file)
for dir != hostDir {
protectedDirs[dir] = true
dir = filepath.Dir(dir)
}
protectedDirs[hostDir] = true // Protect the main directory
}

return filepath.Walk(hostDir, func(path string, info os.FileInfo, err error) error {
Expand Down
7 changes: 6 additions & 1 deletion opampserver/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ go 1.22.0
require (
github.com/go-logr/logr v1.4.2
github.com/odigos-io/odigos/api v0.0.0
github.com/odigos-io/odigos/common v1.0.70
github.com/odigos-io/odigos/common v0.0.0
github.com/odigos-io/odigos/k8sutils v0.0.0
go.opentelemetry.io/otel v1.29.0
google.golang.org/grpc v1.65.0
Expand All @@ -17,6 +17,8 @@ require (
sigs.k8s.io/controller-runtime v0.19.0
)

require github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect

require (
github.com/beorn7/perks v1.0.1 // indirect
github.com/cespare/xxhash/v2 v2.3.0 // indirect
Expand All @@ -37,6 +39,7 @@ require (
github.com/google/go-cmp v0.6.0 // indirect
github.com/google/gofuzz v1.2.0 // indirect
github.com/google/uuid v1.6.0 // indirect
github.com/hashicorp/go-version v1.7.0 // indirect
github.com/imdario/mergo v0.3.6 // indirect
github.com/josharian/intern v1.0.0 // indirect
github.com/json-iterator/go v1.1.12 // indirect
Expand All @@ -52,6 +55,7 @@ require (
github.com/prometheus/common v0.55.0 // indirect
github.com/prometheus/procfs v0.15.1 // indirect
github.com/spf13/pflag v1.0.5 // indirect
github.com/stretchr/testify v1.9.0
github.com/x448/float16 v0.8.4 // indirect
go.opentelemetry.io/otel/trace v1.29.0 // indirect
go.uber.org/zap v1.27.0 // indirect
Expand Down Expand Up @@ -79,5 +83,6 @@ require (

replace (
github.com/odigos-io/odigos/api => ../api
github.com/odigos-io/odigos/common => ../common
github.com/odigos-io/odigos/k8sutils => ../k8sutils
)
4 changes: 2 additions & 2 deletions opampserver/go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,8 @@ github.com/google/pprof v0.0.0-20240525223248-4bfdf5a9a2af h1:kmjWCqn2qkEml422C2
github.com/google/pprof v0.0.0-20240525223248-4bfdf5a9a2af/go.mod h1:K1liHPHnj73Fdn/EKuT8nrFqBihUSKXoLYU0BuatOYo=
github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/hashicorp/go-version v1.7.0 h1:5tqGy27NaOTB8yJKUZELlFAS/LTKJkrmONwQKeRZfjY=
github.com/hashicorp/go-version v1.7.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA=
github.com/imdario/mergo v0.3.6 h1:xTNEAn+kxVO7dTZGu0CegyqKZmoWFI0rF8UxjlB2d28=
github.com/imdario/mergo v0.3.6/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA=
github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY=
Expand Down Expand Up @@ -89,8 +91,6 @@ github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9G
github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA=
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ=
github.com/odigos-io/odigos/common v1.0.70 h1:MsVswq8sELiCvkZJSA0w/F6PBXCBbVUXOA/qiLfq+7A=
github.com/odigos-io/odigos/common v1.0.70/go.mod h1:ab+iH/sTKO9n4Mv614lAt6/fQnzNcoWLrc6uDSuZNxU=
github.com/onsi/ginkgo/v2 v2.19.0 h1:9Cnnf7UHo57Hy3k6/m5k3dRfGTMXGvxhHFvkDTCTpvA=
github.com/onsi/ginkgo/v2 v2.19.0/go.mod h1:rlwLi9PilAFJ8jCg9UE1QP6VBpd6/xj3SRC0d6TU0To=
github.com/onsi/gomega v1.33.1 h1:dsYjIxxSR755MDmKVsaFQTE22ChNBcuuTWgkUDSubOk=
Expand Down
Loading
Loading