Skip to content

Commit a64331c

Browse files
Merge main
2 parents 0282eaa + bbfaf89 commit a64331c

File tree

58 files changed

+5791
-1003
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

58 files changed

+5791
-1003
lines changed

Wire.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -233,6 +233,8 @@ func InitializeApp() (*App, error) {
233233
wire.Bind(new(dockerRegistryRepository.DockerRegistryIpsConfigRepository), new(*dockerRegistryRepository.DockerRegistryIpsConfigRepositoryImpl)),
234234
util.NewChartTemplateServiceImpl,
235235
wire.Bind(new(util.ChartTemplateService), new(*util.ChartTemplateServiceImpl)),
236+
util.NewChartDeploymentServiceImpl,
237+
wire.Bind(new(util.ChartDeploymentService), new(*util.ChartDeploymentServiceImpl)),
236238
chart.NewChartServiceImpl,
237239
wire.Bind(new(chart.ChartService), new(*chart.ChartServiceImpl)),
238240
bulkAction.NewBulkUpdateServiceImpl,

api/bean/AppView.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -153,6 +153,7 @@ type DeploymentDetailContainer struct {
153153
IpsAccessProvided bool `json:"ipsAccessProvided"`
154154
DeploymentAppDeleteRequest bool `json:"deploymentAppDeleteRequest"`
155155
Description string `json:"description" validate:"max=40"`
156+
IsVirtualEnvironment bool `json:"isVirtualEnvironment"`
156157
}
157158

158159
type AppDetailContainer struct {
@@ -182,6 +183,7 @@ type Environment struct {
182183
LastDeployed string `json:"lastDeployed"`
183184
DeploymentAppDeleteRequest bool `json:"deploymentAppDeleteRequest"`
184185
Description string `json:"description" validate:"max=40"`
186+
IsVirtualEnvironment bool `json:"isVirtualEnvironment"`
185187
}
186188

187189
type InstanceDetail struct {

api/bean/ValuesOverrideRequest.go

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ package bean
2020
import (
2121
"encoding/json"
2222
"github.com/devtron-labs/devtron/internal/sql/models"
23+
"time"
2324
)
2425

2526
type WorkflowType string
@@ -49,9 +50,16 @@ type ValuesOverrideRequest struct {
4950
DeploymentWithConfig DeploymentConfigurationType `json:"deploymentWithConfig"`
5051
WfrIdForDeploymentWithSpecificTrigger int `json:"wfrIdForDeploymentWithSpecificTrigger"`
5152
CdWorkflowType WorkflowType `json:"cdWorkflowType,notnull"`
53+
WfrId int `json:"wfrId,notnull"`
5254
CdWorkflowId int `json:"cdWorkflowId"`
5355
UserId int32 `json:"-"`
5456
DeploymentType models.DeploymentType `json:"-"`
57+
EnvId int `json:"-"`
58+
EnvName string `json:"-"`
59+
ClusterId int `json:"-"`
60+
AppName string `json:"-"`
61+
PipelineName string `json:"-"`
62+
DeploymentAppType string `json:"-"`
5563
}
5664

5765
type BulkCdDeployEvent struct {
@@ -63,3 +71,12 @@ type ReleaseStatusUpdateRequest struct {
6371
RequestId string `json:"requestId"`
6472
NewStatus models.ChartStatus `json:"newStatus"`
6573
}
74+
75+
type TriggerEvent struct {
76+
PerformGitOps bool
77+
PerformDeploymentOnCluster bool
78+
GetManifestInResponse bool
79+
DeploymentAppType string
80+
TriggeredBy int32
81+
TriggerdAt time.Time
82+
}

api/restHandler/PipelineTriggerRestHandler.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ func (handler PipelineTriggerRestHandlerImpl) OverrideConfig(w http.ResponseWrit
128128
}
129129
ctx := context.WithValue(r.Context(), "token", acdToken)
130130
_, span := otel.Tracer("orchestrator").Start(ctx, "workflowDagExecutor.ManualCdTrigger")
131-
mergeResp, err := handler.workflowDagExecutor.ManualCdTrigger(&overrideRequest, ctx)
131+
mergeResp, _, err := handler.workflowDagExecutor.ManualCdTrigger(&overrideRequest, ctx)
132132
span.End()
133133
if err != nil {
134134
handler.logger.Errorw("request err, OverrideConfig", "err", err, "payload", overrideRequest)

cmd/external-app/wire.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ import (
3333
"github.com/devtron-labs/devtron/internal/sql/repository/pipelineConfig"
3434
"github.com/devtron-labs/devtron/internal/util"
3535
"github.com/devtron-labs/devtron/pkg/app"
36+
appStoreBean "github.com/devtron-labs/devtron/pkg/appStore/bean"
3637
appStoreDeploymentTool "github.com/devtron-labs/devtron/pkg/appStore/deployment/tool"
3738
appStoreDeploymentGitopsTool "github.com/devtron-labs/devtron/pkg/appStore/deployment/tool/gitops"
3839
"github.com/devtron-labs/devtron/pkg/attributes"
@@ -166,6 +167,13 @@ func InitializeApp() (*App, error) {
166167

167168
kubernetesResourceAuditLogs.Newk8sResourceHistoryServiceImpl,
168169
wire.Bind(new(kubernetesResourceAuditLogs.K8sResourceHistoryService), new(*kubernetesResourceAuditLogs.K8sResourceHistoryServiceImpl)),
170+
171+
util.NewChartTemplateServiceImpl,
172+
wire.Bind(new(util.ChartTemplateService), new(*util.ChartTemplateServiceImpl)),
173+
wire.Value(util.ChartWorkingDir("/tmp/charts/")),
174+
wire.Value(appStoreBean.RefChartProxyDir("scripts/devtron-reference-helm-charts")),
175+
util.NewGitFactory,
176+
util.NewGitCliUtil,
169177
)
170178
return &App{}, nil
171179
}

cmd/external-app/wire_gen.go

Lines changed: 21 additions & 9 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
# Prerequisite to setup Prometheus Stack over Devtron
2+
3+
## Introduction
4+
5+
Prometheus is an open-source technology designed to provide monitoring and alerting functionality for cloud-native environments, including Kubernetes. It can collect and store metrics as time-series data, recording information with a timestamp. It can also collect and record labels, which are optional key-value pairs.
6+
7+
### **Open Devtron dashboard and select chartstore from side panel**
8+
9+
### Search for Prometheus and choose the kube-prometheus-stack chart of prometheus-community repo.
10+
![](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/use-cases/prometheus-stack/prome.png)
11+
12+
13+
### ***We have to configure below values in values.yaml***
14+
```yaml
15+
1. search for kube-state-metrics and add below data
16+
17+
kube-state-metrics:
18+
metricLabelsAllowlist:
19+
- pods=[*]
20+
21+
2. search for podMonitorSelectorNilUsesHelmValues and make it false
22+
podMonitorSelectorNilUsesHelmValues: false
23+
24+
3. search for serviceMonitorSelectorNilUsesHelmValues and make it false
25+
serviceMonitorSelectorNilUsesHelmValues: false
26+
27+
```
28+
29+
30+
31+
32+
33+
### **After Configuring the values.yaml click on Update and Deploy button**
34+
35+
Here we can see the all the resources of this stack are in healthy state .
36+
37+
![](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/use-cases/prometheus-stack/prometheus-demo.png)
38+

internal/sql/repository/AppListingRepository.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -371,6 +371,7 @@ func (impl AppListingRepositoryImpl) deploymentDetailsByAppIdAndEnvId(ctx contex
371371
" cia.id as ci_artifact_id," +
372372
" cl.k8s_version," +
373373
" env.cluster_id," +
374+
" env.is_virtual_environment," +
374375
" cl.cluster_name" +
375376
" FROM pipeline p" +
376377
" INNER JOIN pipeline_config_override pco on pco.pipeline_id=p.id" +
@@ -647,7 +648,7 @@ func (impl AppListingRepositoryImpl) FetchOtherEnvironment(appId int) ([]*bean.E
647648
func (impl AppListingRepositoryImpl) FetchMinDetailOtherEnvironment(appId int) ([]*bean.Environment, error) {
648649
impl.Logger.Debug("reached at FetchMinDetailOtherEnvironment:")
649650
var otherEnvironments []*bean.Environment
650-
query := `SELECT p.environment_id,env.environment_name,env.description, env.default as prod, p.deployment_app_delete_request,
651+
query := `SELECT p.environment_id,env.environment_name,env.description,env.is_virtual_environment, env.default as prod, p.deployment_app_delete_request,
651652
env_app_m.app_metrics,env_app_m.infra_metrics from
652653
(SELECT pl.id,pl.app_id,pl.environment_id,pl.deleted, pl.deployment_app_delete_request from pipeline pl
653654
LEFT JOIN pipeline_config_override pco on pco.pipeline_id = pl.id where pl.app_id = ? and pl.deleted = FALSE

internal/sql/repository/chartConfig/PipelineOverrideRepository.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ type PipelineOverrideRepository interface {
6767
GetLatestReleaseByPipelineIds(pipelineIds []int) (pipelineOverrides []*PipelineOverride, err error)
6868
GetLatestReleaseDeploymentType(pipelineIds []int) ([]*PipelineOverride, error)
6969
FetchHelmTypePipelineOverridesForStatusUpdate() (pipelines []*PipelineOverride, err error)
70-
FindLatestByAppIdAndEnvId(appId, environmentId int) (pipelineOverrides *PipelineOverride, err error)
70+
FindLatestByAppIdAndEnvId(appId, environmentId int, deploymentAppType string) (pipelineOverrides *PipelineOverride, err error)
7171
FindLatestByCdWorkflowId(cdWorkflowId int) (pipelineOverride *PipelineOverride, err error)
7272
}
7373

@@ -238,14 +238,14 @@ func (impl PipelineOverrideRepositoryImpl) FetchHelmTypePipelineOverridesForStat
238238
return pipelines, err
239239
}
240240

241-
func (impl PipelineOverrideRepositoryImpl) FindLatestByAppIdAndEnvId(appId, environmentId int) (pipelineOverrides *PipelineOverride, err error) {
241+
func (impl PipelineOverrideRepositoryImpl) FindLatestByAppIdAndEnvId(appId, environmentId int, deploymentAppType string) (pipelineOverrides *PipelineOverride, err error) {
242242
var override PipelineOverride
243243
err = impl.dbConnection.Model(&override).
244244
Column("pipeline_override.*", "Pipeline").
245245
Join("inner join pipeline p on p.id = pipeline_override.pipeline_id").
246246
Where("pipeline.app_id =? ", appId).
247247
Where("pipeline.environment_id =?", environmentId).
248-
Where("p.deployment_app_type = ?", util.PIPELINE_DEPLOYMENT_TYPE_ACD).
248+
Where("p.deployment_app_type = ?", deploymentAppType).
249249
Where("p.deleted = ?", false).
250250
Order("id DESC").Limit(1).
251251
Select()

0 commit comments

Comments
 (0)