Skip to content

Commit

Permalink
Revert "Adding Postgres Helm chart to rad init (#8072)" (#8241)
Browse files Browse the repository at this point in the history
# Description

This reverts commit 9e74e73.

Reverting this commit as it is breaking long running tests. Needs to be
investigated and checked in again with a fix.

```
Events:
  Type     Reason             Age                     From                Message
  ----     ------             ----                    ----                -------
  Warning  FailedScheduling   47m (x10 over 76m)      default-scheduler   0/5 nodes are available: pod has unbound immediate PersistentVolumeClaims. preemption: 0/5 nodes are available: 5 Preemption is not helpful for scheduling..
  Warning  FailedScheduling   7m17s (x8 over 42m)     default-scheduler   0/4 nodes are available: pod has unbound immediate PersistentVolumeClaims. preemption: 0/4 nodes are available: 4 Preemption is not helpful for scheduling..
  Normal   NotTriggerScaleUp  3m39s (x840 over 144m)  cluster-autoscaler  pod didn't trigger scale-up: 2 pod has unbound immediate PersistentVolumeClaims
```
```
% kubectl get pvc -n radius-system
NAME                  STATUS    VOLUME   CAPACITY   ACCESS MODES   STORAGECLASS   AGE
database-database-0   Pending                                      standard       3d11h
```

No matching persistent volume to bind the pvc to -
```
% kubectl get pv
NAME                                       CAPACITY   ACCESS MODES   RECLAIM POLICY   STATUS   CLAIM                                                         STORAGECLASS   REASON   AGE
pvc-3bc9bae6-18a1-41ed-b78e-01c347df6f68   1Gi        RWO            Delete           Bound    dapr-system/dapr-scheduler-data-dir-dapr-scheduler-server-0   default                 116d
```

More details can be found here:
#8238.

Signed-off-by: Karishma Chawla <kachawla@microsoft.com>
  • Loading branch information
kachawla authored Jan 14, 2025
1 parent 845f88d commit f714348
Show file tree
Hide file tree
Showing 8 changed files with 316 additions and 103 deletions.
13 changes: 0 additions & 13 deletions deploy/Chart/templates/database/configmaps.yaml

This file was deleted.

16 changes: 0 additions & 16 deletions deploy/Chart/templates/database/service.yaml

This file was deleted.

8 changes: 0 additions & 8 deletions deploy/Chart/templates/database/serviceaccount.yaml

This file was deleted.

52 changes: 0 additions & 52 deletions deploy/Chart/templates/database/statefulset.yaml

This file was deleted.

14 changes: 0 additions & 14 deletions deploy/Chart/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -112,17 +112,3 @@ dashboard:
memory: "60Mi"
limits:
memory: "300Mi"

database:
image: ghcr.io/radius-project/mirror/postgres
tag: latest
storageClassName: "standard" # set to the storage class name if required
# Minimum resource requirements, may need to revisit and scale.
storageSize: "1Gi"
resources:
requests:
cpu: "2"
memory: "512Mi"
limits:
cpu: "2"
memory: "1024Mi"
118 changes: 118 additions & 0 deletions test/functional-portable/datastoresrp/noncloud/resources/sql_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
/*
Copyright 2023 The Radius Authors.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

package resource_test

import (
"runtime"
"testing"

"github.com/radius-project/radius/test/rp"
"github.com/radius-project/radius/test/step"
"github.com/radius-project/radius/test/testutil"
"github.com/radius-project/radius/test/validation"
)

func Test_SQLDatabase_Manual(t *testing.T) {
// https://github.com/microsoft/mssql-docker/issues/668
if runtime.GOARCH == "arm64" {
t.Skip("skipping Test_SQL, unsupported architecture")
}
template := "testdata/datastoresrp-resources-sqldb-manual.bicep"
name := "dsrp-resources-sql"
appNamespace := "default-dsrp-resources-sql"

test := rp.NewRPTest(t, name, []rp.TestStep{
{
Executor: step.NewDeployExecutor(template, testutil.GetMagpieImage()),
RPResources: &validation.RPResourceSet{
Resources: []validation.RPResource{
{
Name: name,
Type: validation.ApplicationsResource,
},
{
Name: "sql-app-ctnr",
Type: validation.ContainersResource,
App: name,
},
{
Name: "sql-db",
Type: validation.SQLDatabasesResource,
App: name,
},
{
Name: "sql-ctnr",
Type: validation.ContainersResource,
App: name,
},
},
},
K8sObjects: &validation.K8sObjectSet{
Namespaces: map[string][]validation.K8sObject{
appNamespace: {
validation.NewK8sPodForResource(name, "sql-app-ctnr"),
validation.NewK8sPodForResource(name, "sql-ctnr"),
},
},
},
},
})

test.Test(t)
}

// Test_SQLDatabase_Recipe validates:
// the creation of a sql database from recipe
// container using the sqlDatabases portable resource to connect to the sql database resource
func Test_SQLDatabase_Recipe(t *testing.T) {
template := "testdata/datastoresrp-resources-sqldb-recipe.bicep"
name := "dsrp-resources-sqldb-recipe"
appNamespace := "dsrp-resources-sqldb-recipe-app"
test := rp.NewRPTest(t, name, []rp.TestStep{
{
Executor: step.NewDeployExecutor(template, testutil.GetMagpieImage(), testutil.GetBicepRecipeRegistry(), testutil.GetBicepRecipeVersion()),
RPResources: &validation.RPResourceSet{
Resources: []validation.RPResource{
{
Name: "dsrp-resources-env-sql-recipe-env",
Type: validation.EnvironmentsResource,
},
{
Name: "dsrp-resources-sqldb-recipe",
Type: validation.ApplicationsResource,
App: name,
},
{
Name: "sql-recipe-app-ctnr",
Type: validation.ContainersResource,
App: name,
},
},
},
K8sObjects: &validation.K8sObjectSet{
Namespaces: map[string][]validation.K8sObject{
appNamespace: {
validation.NewK8sPodForResource(name, "sql-recipe-app-ctnr").ValidateLabels(false),
validation.NewK8sPodForResource(name, "sql-recipe-resource").ValidateLabels(false),
},
},
},
},
})

test.Test(t)
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
extension radius

@description('Specifies the location for resources.')
param location string = 'global'

@description('Specifies the image for the container resource.')
param magpieImage string

@description('Specifies the port for the container resource.')
param magpiePort int = 3000

@description('Specifies the environment for resources.')
param environment string = 'test'

@description('Specifies the image for the sql container resource.')
param sqlImage string = 'mcr.microsoft.com/mssql/server:2019-latest'

@description('Specifies the port for the container resource.')
param sqlPort int = 1433

@description('Specifies the SQL username.')
param username string = 'sa'

@description('Specifies the SQL password.')
@secure()
param password string = newGuid()

resource app 'Applications.Core/applications@2023-10-01-preview' = {
name: 'dsrp-resources-sql'
location: location
properties: {
environment: environment
}
}

resource webapp 'Applications.Core/containers@2023-10-01-preview' = {
name: 'sql-app-ctnr'
location: location
properties: {
application: app.id
connections: {
sql: {
source: db.id
}
}
container: {
image: magpieImage
env: {
CONNECTION_SQL_CONNECTIONSTRING: {
value: db.listSecrets().connectionString
}
}
readinessProbe: {
kind: 'httpGet'
containerPort: magpiePort
path: '/healthz'
}
}
}
}

resource db 'Applications.Datastores/sqlDatabases@2023-10-01-preview' = {
name: 'sql-db'
location: location
properties: {
application: app.id
environment: environment
server: 'sql-ctnr'
database: 'master'
resourceProvisioning: 'manual'
port: sqlPort
username: username
secrets: {
password: password
}
}
}

resource sqlContainer 'Applications.Core/containers@2023-10-01-preview' = {
name: 'sql-ctnr'
location: location
properties: {
application: app.id
container: {
image: sqlImage
env: {
ACCEPT_EULA: {
value: 'Y'
}
MSSQL_PID: {
value: 'Developer'
}
MSSQL_SA_PASSWORD: {
value: password
}
}
ports: {
sql: {
containerPort: sqlPort
}
}
}
}
}
Loading

0 comments on commit f714348

Please sign in to comment.