13
13
import javax .annotation .Nonnull ;
14
14
15
15
import io .kubernetes .client .custom .V1Patch ;
16
+ import io .kubernetes .client .openapi .ApiException ;
16
17
import io .kubernetes .client .openapi .models .V1EnvVar ;
17
18
import io .kubernetes .client .openapi .models .V1LocalObjectReference ;
18
19
import io .kubernetes .client .openapi .models .V1ObjectMeta ;
29
30
import oracle .weblogic .domain .Model ;
30
31
import oracle .weblogic .domain .ServerPod ;
31
32
import oracle .weblogic .domain .ServerService ;
32
- import oracle .weblogic .kubernetes .actions .impl .primitive .Kubernetes ;
33
33
import oracle .weblogic .kubernetes .annotations .IntegrationTest ;
34
34
import oracle .weblogic .kubernetes .annotations .Namespaces ;
35
35
import oracle .weblogic .kubernetes .logging .LoggingFacade ;
48
48
import static oracle .weblogic .kubernetes .TestConstants .BASE_IMAGES_REPO ;
49
49
import static oracle .weblogic .kubernetes .TestConstants .BASE_IMAGES_REPO_SECRET_NAME ;
50
50
import static oracle .weblogic .kubernetes .TestConstants .CLUSTER_VERSION ;
51
- import static oracle .weblogic .kubernetes .TestConstants .DB_IMAGE_TO_USE_IN_SPEC ;
52
51
import static oracle .weblogic .kubernetes .TestConstants .DOMAIN_API_VERSION ;
53
52
import static oracle .weblogic .kubernetes .TestConstants .DOMAIN_STATUS_CONDITION_AVAILABLE_TYPE ;
54
53
import static oracle .weblogic .kubernetes .TestConstants .DOMAIN_STATUS_CONDITION_COMPLETED_TYPE ;
84
83
import static oracle .weblogic .kubernetes .utils .ConfigMapUtils .configMapExist ;
85
84
import static oracle .weblogic .kubernetes .utils .ConfigMapUtils .createConfigMapAndVerify ;
86
85
import static oracle .weblogic .kubernetes .utils .ConfigMapUtils .createConfigMapFromFiles ;
86
+ import static oracle .weblogic .kubernetes .utils .DbUtils .createOracleDBUsingOperator ;
87
87
import static oracle .weblogic .kubernetes .utils .DbUtils .createRcuAccessSecret ;
88
- import static oracle .weblogic .kubernetes .utils .DbUtils .setupDBandRCUschema ;
88
+ import static oracle .weblogic .kubernetes .utils .DbUtils .createRcuSchema ;
89
+ import static oracle .weblogic .kubernetes .utils .DbUtils .deleteOracleDB ;
89
90
import static oracle .weblogic .kubernetes .utils .DomainUtils .checkDomainStatusConditionTypeExists ;
90
91
import static oracle .weblogic .kubernetes .utils .DomainUtils .checkDomainStatusConditionTypeHasExpectedStatus ;
91
92
import static oracle .weblogic .kubernetes .utils .DomainUtils .checkServerStatusPodPhaseAndPodReady ;
@@ -734,24 +735,21 @@ void testMSBootFailureStatus() {
734
735
735
736
String rcuaccessSecretName = domainName + "-rcu-access" ;
736
737
String opsswalletpassSecretName = domainName + "-opss-wallet-password-secret" ;
738
+ String rcuSysPassword = "Oradoc_db1" ;
739
+ String dbName = domainName + "my-oracle-db" ;
737
740
738
- logger .info ("Start DB and create RCU schema for namespace: {0}, dbListenerPort: {1}, RCU prefix: {2}, "
739
- + "dbUrl: {3}, dbImage: {4}, fmwImage: {5} " , domainNamespace , dbListenerPort , rcuSchemaPrefix , dbUrl ,
740
- DB_IMAGE_TO_USE_IN_SPEC , FMWINFRA_IMAGE_TO_USE_IN_SPEC );
741
- assertDoesNotThrow (() -> setupDBandRCUschema ( DB_IMAGE_TO_USE_IN_SPEC , FMWINFRA_IMAGE_TO_USE_IN_SPEC ,
742
- rcuSchemaPrefix , domainNamespace , getNextFreePort () , dbUrl , dbListenerPort ),
743
- String . format ( "Failed to create RCU schema for prefix %s in the namespace %s with "
744
- + "dbUrl %s, dbListenerPost %s" , rcuSchemaPrefix , domainNamespace , dbUrl , dbListenerPort ) );
741
+ logger .info ("Create Oracle DB in namespace: {0} " , domainNamespace );
742
+ createBaseRepoSecret ( domainNamespace );
743
+ dbUrl = assertDoesNotThrow (() -> createOracleDBUsingOperator ( dbName , rcuSysPassword , domainNamespace ) );
744
+
745
+ logger . info ( "Create RCU schema with fmwImage: {0}, rcuSchemaPrefix: {1} , dbUrl: {2}, "
746
+ + " dbNamespace: {3}" , FMWINFRA_IMAGE_TO_USE_IN_SPEC , rcuSchemaPrefix , dbUrl , domainNamespace );
747
+ createRcuSchema ( FMWINFRA_IMAGE_TO_USE_IN_SPEC , rcuSchemaPrefix , dbUrl , domainNamespace );
745
748
746
749
// create RCU access secret
747
750
logger .info ("Creating RCU access secret: {0}, with prefix: {1}, dbUrl: {2}, schemapassword: {3})" ,
748
751
rcuaccessSecretName , rcuSchemaPrefix , rcuSchemaPassword , dbUrl );
749
- assertDoesNotThrow (() -> createRcuAccessSecret (rcuaccessSecretName ,
750
- domainNamespace ,
751
- rcuSchemaPrefix ,
752
- rcuSchemaPassword ,
753
- dbUrl ),
754
- String .format ("createSecret failed for %s" , rcuaccessSecretName ));
752
+ createRcuAccessSecret (rcuaccessSecretName , domainNamespace , rcuSchemaPrefix , rcuSchemaPassword , dbUrl );
755
753
756
754
logger .info ("Create OPSS wallet password secret" );
757
755
assertDoesNotThrow (() -> createOpsswalletpasswordSecret (
@@ -823,12 +821,7 @@ rcuSchemaPrefix, domainNamespace, getNextFreePort(), dbUrl, dbListenerPort),
823
821
}
824
822
825
823
// delete Oracle database
826
- String dbPodName = "oracledb" ;
827
- assertDoesNotThrow (() -> Kubernetes .deleteDeployment (domainNamespace , "oracledb" ),
828
- "deleting oracle db failed" );
829
-
830
- logger .info ("Wait for the oracle Db pod: {0} to be deleted in namespace {1}" , dbPodName , domainNamespace );
831
- PodUtils .checkPodDeleted (dbPodName , null , domainNamespace );
824
+ deleteOracleDB (domainNamespace , dbName );
832
825
833
826
patchStr
834
827
= "[{\" op\" : \" replace\" , \" path\" : \" /spec/serverStartPolicy\" , \" value\" : \" IfNeeded\" }]" ;
@@ -848,6 +841,8 @@ rcuSchemaPrefix, domainNamespace, getNextFreePort(), dbUrl, dbListenerPort),
848
841
checkServerStatusPodPhaseAndPodReady (domainName , domainNamespace , managedServerName , "Running" , "False" );
849
842
}
850
843
testPassed = true ;
844
+ } catch (ApiException ex ) {
845
+ logger .severe (ex .getLocalizedMessage ());
851
846
} finally {
852
847
if (!testPassed ) {
853
848
LoggingUtil .generateLog (this , ns );
0 commit comments