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

Merging the Coindcx patch changes #74

Closed
wants to merge 40 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
40 commits
Select commit Hold shift + click to select a range
65f4724
Merge pull request #68 from saitejaopsmx/coindcx-branch
saitejaopsmx Feb 11, 2025
b5eb52d
SUpport for the Dgraph HA
saitejaopsmx Feb 17, 2025
b888f13
Handled the Dgraph HA
saitejaopsmx Feb 18, 2025
f094052
updated the values file
saitejaopsmx Feb 18, 2025
bcc5e74
Removed the affinity and Handled the Annotations of ServiceAccount
saitejaopsmx Feb 19, 2025
589bc21
Updated the path
saitejaopsmx Feb 19, 2025
15fbf5a
Updated the Service Accounts Names
saitejaopsmx Feb 19, 2025
d7311b2
Parameter size the Import value
saitejaopsmx Feb 19, 2025
a7c7aa0
Updated all the chnages
saitejaopsmx Feb 19, 2025
a49af64
SUpport for the Dgraph HA
saitejaopsmx Feb 17, 2025
fa4658e
Handled the Dgraph HA
saitejaopsmx Feb 18, 2025
5ec4037
updated the values file
saitejaopsmx Feb 18, 2025
84bec9e
Removed the affinity and Handled the Annotations of ServiceAccount
saitejaopsmx Feb 19, 2025
1c12401
Updated the path
saitejaopsmx Feb 19, 2025
2fd161a
Updated the Service Accounts Names
saitejaopsmx Feb 19, 2025
7c73404
Parameter size the Import value
saitejaopsmx Feb 19, 2025
fe30810
Updated all the chnages
saitejaopsmx Feb 19, 2025
a3f112c
Updated the Sysdig and Synk Changes for CI
saitejaopsmx Feb 26, 2025
0860776
Updated the config for the sysdig
saitejaopsmx Feb 27, 2025
9c5a5e9
Updated the Insights changes
saitejaopsmx Feb 27, 2025
fadba50
Updated the configs and Job
saitejaopsmx Feb 27, 2025
70f7a35
Added the insights config changes
saitejaopsmx Feb 27, 2025
28cf9e1
Update the config for insights loding
saitejaopsmx Feb 27, 2025
25eccdb
Updated the Snyk Cli changes
saitejaopsmx Feb 28, 2025
216e96a
Handled the Prometheus Endpoint
saitejaopsmx Feb 28, 2025
b7ed3ec
Added the Namespace for the Insights
saitejaopsmx Feb 28, 2025
b2840d0
Updated the Release Namespace for the queres
saitejaopsmx Feb 28, 2025
b051d5c
Removed the dependency of the sidecat
saitejaopsmx Feb 28, 2025
cd2b86a
Updated the Queries
saitejaopsmx Mar 1, 2025
7fd01d1
Updated the config changes
saitejaopsmx Mar 1, 2025
1627880
Updated the deployment mapping
saitejaopsmx Mar 1, 2025
683505e
Updated the container section
saitejaopsmx Mar 1, 2025
462b303
Updated the file name
saitejaopsmx Mar 1, 2025
a5d6343
Updated the repository path
saitejaopsmx Mar 1, 2025
d9adeeb
Updated the config
saitejaopsmx Mar 1, 2025
9820b95
Updated the values.yaml
saitejaopsmx Mar 1, 2025
9029477
Merge branch '2024-12-01' into coindcx-branch
saitejaopsmx Mar 1, 2025
b494a44
Helm Chart for January Release
saitejaopsmx Mar 3, 2025
4ada079
Merge branch 'OpsMx:2025-01' into 2025-01
saitejaopsmx Mar 6, 2025
3c144fd
Merge branch '2025-02' into coindcx-branch
saitejaopsmx Mar 6, 2025
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
97 changes: 97 additions & 0 deletions charts/ssd/config/otel/otel-gateway-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
receivers:
otlp:
protocols:
grpc:
endpoint: 0.0.0.0:4317
http:
endpoint: 0.0.0.0:4318
processors:
batch/raw:
batch/aggregate:
metricstransform/rename:
transforms:
- include: "^ssd\\.(.*)$"
match_type: regexp
action: insert
new_name: ssd.aggregate.$${1}
metricstransform/aggregate:
transforms:
- include: "^ssd\\..*$"
match_type: regexp
action: update
operations:
- action: aggregate_labels
label_set: ["ssd.workflow.type","k8s.deployment.name","k8s.namespace.name"]
aggregation_type: sum
resource/remove_label:
attributes:
- key: "k8s.pod.ip"
action: delete
- key: "k8s.pod.name"
action: delete
- key: "pipeline"
action: insert
value: "aggregator"
transform/remove_label:
metric_statements:
- context: datapoint
statements:
- 'delete_key(attributes, "k8s.pod.ip")'
- 'delete_key(attributes, "k8s.pod.name")'
groupbyattrs/aggregate:
keys:
- "k8s.deployment.name"
- "k8s.namespace.name"
filter/aggregate:
metrics:
include:
match_type: regexp
metric_names:
- "^ssd\\.aggregate\\..*"
k8sattributes/raw:
auth_type: serviceAccount # Allows access to the Kubernetes API
passthrough: false
extract:
metadata:
- k8s.deployment.name
- k8s.namespace.name
- k8s.pod.name
pod_association:
- sources:
- from: connection
k8sattributes/aggregate:
auth_type: serviceAccount # Allows access to the Kubernetes API
passthrough: false
extract:
metadata:
- k8s.deployment.name
- k8s.namespace.name
- k8s.pod.name
pod_association:
- sources:
- from: connection

exporters:
debug:
verbosity: detailed
prometheus:
endpoint: "0.0.0.0:9464"
enable_open_metrics: true
metric_expiration: 5m
resource_to_telemetry_conversion:
enabled: true

service:
pipelines:
traces:
receivers: [otlp]
processors: [batch/raw]
exporters: [debug]
metrics/raw:
receivers: [otlp]
processors: [k8sattributes/raw,batch/raw]
exporters: [debug, prometheus]
metrics/aggregate:
receivers: [otlp]
processors: [k8sattributes/aggregate,metricstransform/aggregate,metricstransform/rename,resource/remove_label,filter/aggregate,batch/aggregate]
exporters: [debug, prometheus]
35 changes: 35 additions & 0 deletions charts/ssd/config/otel/otel-sidecar-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
receivers:
otlp:
protocols:
grpc:
http:

processors:
batch:

exporters:
otlp:
endpoint: "http://otel-gateway:4317"
tls:
insecure: true

debug:
verbosity: detailed

prometheus:
endpoint: "0.0.0.0:9464"
enable_open_metrics: true
metric_expiration: 5m
resource_to_telemetry_conversion:
enabled: true

service:
pipelines:
traces:
receivers: [otlp]
processors: [batch]
exporters: [otlp]
metrics:
receivers: [otlp]
processors: [batch]
exporters: [otlp,debug,prometheus]
19 changes: 19 additions & 0 deletions charts/ssd/config/snyk-monitor/config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
run:
sync-interval: {{ .Values.snykmonitor.interval }}
logger:
level: {{ .Values.snykmonitor.loglevel | quote }} # options: info, debug
dgraph:
{{- if .Values.dgraph.HA.enabled }}
host: http://dgraph-alpha-public
{{- else }}
host: http://dgraph-public
{{- end }}
port: 8080
tool-chain:
host: http://tool-chain
port: 8100
ssd-opa:
host: http://ssd-opa
port: 8200
otelAddr: localhost:4317
otelInterval: {{ .Values.otel.interval }}
16 changes: 16 additions & 0 deletions charts/ssd/config/ssd-gate/services-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,11 @@
streaming: false
strip_path: "/tool-chain"
- name: dgraph
{{- if .Values.dgraph.HA.enabled }}
baseUrl: dgraph-alpha-public:8080
{{- else }}
baseUrl: dgraph-public:8080
{{- end }}
health_endpoint: /
auth_required: true
path_prefixes:
Expand All @@ -112,6 +116,12 @@
- "/minio"
baseUrl: {{ .Release.Name }}-minio:9000
health_endpoint: ""
- name: prometheus
baseUrl: {{ .Values.prometheusUrl }} #this is dependent on the localtion of the prometheus server
health_endpoint: ""
auth_required: false
path_prefixes:
- "/api/v1/query_range"
- name: ssd-temporal-web
baseUrl: {{ .Release.Name }}-temporal-web:8080
health_endpoint: ""
Expand All @@ -125,3 +135,9 @@
baseUrl: ssd-dex:5558
health_endpoint: /healthz/ready
{{- end }}
- name: metrics
baseUrl: otel-gateway:9464
health_endpoint: ""
auth_required: false
path_prefixes:
- "/metrics"
9 changes: 9 additions & 0 deletions charts/ssd/config/ssd-opa/ssd-opa.yaml
Original file line number Diff line number Diff line change
@@ -1,9 +1,18 @@
httpListenPort: 8200
{{- if .Values.dgraph.HA.enabled }}
graphQLAddr: http://dgraph-alpha-public:8080/graphql
dgraphQLAddr: http://dgraph-alpha-public:8080/query
{{- else }}
graphQLAddr: http://dgraph-public:8080/graphql
dgraphQLAddr: http://dgraph-public:8080/query
{{- end }}
ssdUrl: {{.Values.global.ssdUI.protocol}}://{{.Values.global.ssdUI.host}}
logLevel: {{ .Values.ssdopa.loglevel }}
reScheduler: false
redis:
address : {{ .Release.Name }}-redis-master:{{ .Values.redis.port }}
password: {{ .Values.redis.password }}
db: 0
otelAddr: localhost:4317
otelInterval: {{ .Values.otel.interval }}
otelLongInterval: {{ .Values.otel.LongInterval }}
3 changes: 2 additions & 1 deletion charts/ssd/config/ssd-ui/app-config.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,6 @@
"stageSecurityThresholdMinScore": 50,
"stageSecurityThresholdMaxScore": 70,
"dgraphToken": "",
"dgraphEndPointUrl": "/graphql"
"dgraphEndPointUrl": "/graphql",
"prometheusEndPointUrl": "/api/v1/query_range"
}
22 changes: 22 additions & 0 deletions charts/ssd/config/ssd-ui/help-text.json
Original file line number Diff line number Diff line change
Expand Up @@ -717,6 +717,28 @@
}
}
},
"SYSDIG": {
"HEADER": "Sysdig",
"BODY": "",
"NAME": {
"TOOLTIP": "",
"VALIDATION_MESSAGE": {
"noSpecialCharacters": "Account Name cannot contain special characters other than -",
"cannotContainSpace": "Account Name cannot contain space",
"required": "Account Name cannot be empty",
"startingFromNumber": "Account Name cannot start with numbers",
"minlength": "Account Name should be more than 2 characters",
"invalidName": "Please choose another account name; User generated account can't be named `default`"
}
},
"URL": {
"TOOLTIP": "",
"VALIDATION_MESSAGE": {
"required": "URL cannot be empty",
"invalidValue": "URL is invalid"
}
}
},
"JFROG": {
"HEADER": "JFrog XRay Scanning",
"BODY": "<p>JFrog Artifactory is a universal artifact repository manager designed to store, manage, and distribute binaries and artifacts produced during the software development process, including compiled code, libraries, dependencies, Docker images, and more.</p> <div> <p><strong>Usage in SSD</strong></p> <ul> <li>JFrog Artifactory notifies SSD of each pipeline execution. SSD identifies the image for every build and connects to the Artifactory repository to pull the newly built image.</li> <li>SSD then runs security scans on the pulled images. The scan results are available on the Vulnerability Management page and the Artifact section of the DBOM page.</li> <li>JFrog Artifactory helps collect metadata such as Artifact SHA for artifact integrity checks, ensuring security in the supply chain. This information is populated in the DBOM page for audit purposes.</li> </ul> </div>",
Expand Down
52 changes: 52 additions & 0 deletions charts/ssd/config/ssd-ui/insights-config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
{
"insightsConfigData": [
{
"chartType": "line",
"metricName": "Scan wise - Active scans count",
"query": "ssd_aggregate_active_workflows{k8s_namespace_name=\"{{ .Release.Namespace}}\"}",
"plotAxisName": "ssd_workflow_type"
},
{
"chartType": "line",
"metricName": "Scan wise - Scans completed per second",
"query": "rate(ssd_aggregate_executed_workflows_total{k8s_namespace_name=\"{{ .Release.Namespace}}\"}[5m])",
"plotAxisName": "ssd_workflow_type"
},
{
"chartType": "line",
"metricName": "Scan wise - Scans failed per second",
"query": "rate(ssd_aggregate_failed_wrokflows_total{k8s_namespace_name=\"{{ .Release.Namespace}}\"}[5m])",
"plotAxisName": "ssd_workflow_type"
},
{
"chartType": "area",
"metricName": "Source Code Repositories Scanned - Active count",
"query": "ssd_aggregate_source_code_repo_scan_active{k8s_namespace_name=\"{{ .Release.Namespace}}\"}",
"plotAxisName": ""
},
{
"chartType": "line",
"metricName": "Source Code Repositories Scanned - Completed per second",
"query": "rate(ssd_aggregate_source_code_repo_scan_executed_total{k8s_namespace_name=\"{{ .Release.Namespace}}\"}[5m])",
"plotAxisName": ""
},
{
"chartType": "line",
"metricName": "Source Code Repositories Scanned - Failed per second",
"query": "rate(ssd_aggregate_source_code_repo_scan_failed_total{k8s_namespace_name=\"{{ .Release.Namespace}}\"}[5m])",
"plotAxisName": ""
},
{
"chartType": "line",
"metricName": "Number of new repositories discovered",
"query": "ssd_aggregate_new_repo_discovered{k8s_namespace_name=\"{{ .Release.Namespace}}\"}",
"plotAxisName": ""
},
{
"chartType": "area",
"metricName": "CI/Build Events Received per Second",
"query": "rate(ssd_aggregate_ci_events_triggered_total{k8s_namespace_name=\"{{ .Release.Namespace}}\"}[5m])",
"plotAxisName": ""
}
]
}
87 changes: 87 additions & 0 deletions charts/ssd/config/ssd-ui/integrators-config.json
Original file line number Diff line number Diff line change
Expand Up @@ -595,6 +595,17 @@
"helpText": "Options",
"placeholderText": ""
},
"cimonitoring": {
"displayName": "CI Monitoring",
"dataType": "toggle",
"default": "inactive",
"featureConfig": true,
"requiredKey": "sastsnykscan",
"requiredValue": "Cloud Mode",
"required": false,
"helpText": "Options",
"placeholderText": "----------"
},
"token": {
"displayName": "Token",
"dataType": "input",
Expand Down Expand Up @@ -1832,6 +1843,82 @@
}
]
},
{
"integratorType": "sysdig",
"displayName": "Sysdig",
"category": "scanningtool",
"multiSupport": true,
"testConnectionFlag": true,
"deleteAccount": true,
"integratorConfigs": {
"name": {
"displayName": "Account Name",
"dataType": "input",
"required": true,
"helpText": "",
"placeholderText": "opsmx-accountname"
},
"url": {
"dataType": "input",
"displayName": "URL",
"helpText": "URL",
"regexpValue": "^(?:https?:\/\/|s?ftps?:\/\/)?(?!www | www\\.)[A-Za-z0-9_-]+\\.+[A-Za-z0-9.\/%&=\\?_:;-]+$|https?:\/\/(?:w{1,3}\\.)?[^\\s.]+(?:\\.[a-z]+)*(?::\\d+)?(?![^<]*(?:<\/\\w+>|\/?>))",
"placeholderText": "Example:https://site.com",
"required": true,
"encrypt": false
},
"token": {
"displayName": "Token",
"dataType": "input",
"required": true,
"encrypt": true,
"helpText": "Authentiation Type",
"placeholderText": "Example:knjnasjwokldjhse"
}
},
"gridConfigs": [
{
"name": "Account Name",
"prop": "name",
"type": "default",
"width": 160,
"sortable": false,
"defatultVisibility": true
},
{
"name": "Url",
"prop": "url",
"type": "default",
"width": 160,
"sortable": false,
"defatultVisibility": true
},
{
"name": "Team",
"prop": "team",
"type": "chipSet",
"width": 130,
"sortable": false,
"defatultVisibility": true
},
{
"name": "Environment",
"prop": "environments",
"type": "chipSet",
"width": 130,
"sortable": false,
"defatultVisibility": true
},
{
"name": "Status",
"prop": "status",
"type": "toggleSwitch",
"width": 80,
"sortable": false,
"defatultVisibility": true
}
]
},
{
"integratorType": "syft",
"displayName": "Syft (CMD)",
Expand Down
Loading