mirror of https://github.com/apache/cloudstack.git
Add upgrade path for 4.18.0
This commit is contained in:
parent
2aca780011
commit
1feef50b5a
|
|
@ -33,6 +33,7 @@ import com.cloud.upgrade.dao.Upgrade41510to41520;
|
||||||
import com.cloud.upgrade.dao.Upgrade41600to41610;
|
import com.cloud.upgrade.dao.Upgrade41600to41610;
|
||||||
import com.cloud.upgrade.dao.Upgrade41610to41700;
|
import com.cloud.upgrade.dao.Upgrade41610to41700;
|
||||||
import com.cloud.upgrade.dao.Upgrade41700to41710;
|
import com.cloud.upgrade.dao.Upgrade41700to41710;
|
||||||
|
import com.cloud.upgrade.dao.Upgrade41710to41800;
|
||||||
import org.apache.cloudstack.utils.CloudStackVersion;
|
import org.apache.cloudstack.utils.CloudStackVersion;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.apache.log4j.Logger;
|
import org.apache.log4j.Logger;
|
||||||
|
|
@ -207,6 +208,7 @@ public class DatabaseUpgradeChecker implements SystemIntegrityChecker {
|
||||||
.next("4.16.0.0", new Upgrade41600to41610())
|
.next("4.16.0.0", new Upgrade41600to41610())
|
||||||
.next("4.16.1.0", new Upgrade41610to41700())
|
.next("4.16.1.0", new Upgrade41610to41700())
|
||||||
.next("4.17.0.0", new Upgrade41700to41710())
|
.next("4.17.0.0", new Upgrade41700to41710())
|
||||||
|
.next("4.17.1.0", new Upgrade41710to41800())
|
||||||
.build();
|
.build();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,86 @@
|
||||||
|
// Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
// or more contributor license agreements. See the NOTICE file
|
||||||
|
// distributed with this work for additional information
|
||||||
|
// regarding copyright ownership. The ASF licenses this file
|
||||||
|
// to you 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 com.cloud.upgrade.dao;
|
||||||
|
|
||||||
|
import com.cloud.upgrade.SystemVmTemplateRegistration;
|
||||||
|
import com.cloud.utils.exception.CloudRuntimeException;
|
||||||
|
import org.apache.log4j.Logger;
|
||||||
|
|
||||||
|
import java.io.InputStream;
|
||||||
|
import java.sql.Connection;
|
||||||
|
|
||||||
|
public class Upgrade41710to41800 implements DbUpgrade, DbUpgradeSystemVmTemplate {
|
||||||
|
|
||||||
|
final static Logger LOG = Logger.getLogger(Upgrade41710to41800.class);
|
||||||
|
private SystemVmTemplateRegistration systemVmTemplateRegistration;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String[] getUpgradableVersionRange() {
|
||||||
|
return new String[] {"4.17.1.0", "4.18.0.0"};
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getUpgradedVersion() {
|
||||||
|
return "4.18.0.0";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean supportsRollingUpgrade() {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public InputStream[] getPrepareScripts() {
|
||||||
|
final String scriptFile = "META-INF/db/schema-41710to41800.sql";
|
||||||
|
final InputStream script = Thread.currentThread().getContextClassLoader().getResourceAsStream(scriptFile);
|
||||||
|
if (script == null) {
|
||||||
|
throw new CloudRuntimeException("Unable to find " + scriptFile);
|
||||||
|
}
|
||||||
|
|
||||||
|
return new InputStream[] {script};
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void performDataMigration(Connection conn) {
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public InputStream[] getCleanupScripts() {
|
||||||
|
final String scriptFile = "META-INF/db/schema-41710to41800-cleanup.sql";
|
||||||
|
final InputStream script = Thread.currentThread().getContextClassLoader().getResourceAsStream(scriptFile);
|
||||||
|
if (script == null) {
|
||||||
|
throw new CloudRuntimeException("Unable to find " + scriptFile);
|
||||||
|
}
|
||||||
|
|
||||||
|
return new InputStream[] {script};
|
||||||
|
}
|
||||||
|
|
||||||
|
private void initSystemVmTemplateRegistration() {
|
||||||
|
systemVmTemplateRegistration = new SystemVmTemplateRegistration("");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void updateSystemVmTemplates(Connection conn) {
|
||||||
|
LOG.debug("Updating System Vm template IDs");
|
||||||
|
initSystemVmTemplateRegistration();
|
||||||
|
try {
|
||||||
|
systemVmTemplateRegistration.updateSystemVmTemplates(conn);
|
||||||
|
} catch (Exception e) {
|
||||||
|
throw new CloudRuntimeException("Failed to find / register SystemVM template(s)");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -16,5 +16,5 @@
|
||||||
-- under the License.
|
-- under the License.
|
||||||
|
|
||||||
--;
|
--;
|
||||||
-- Schema upgrade cleanup from 4.16.1.0 to 4.17.0.0
|
-- Schema upgrade cleanup from 4.17.0.0 to 4.17.1.0
|
||||||
--;
|
--;
|
||||||
|
|
@ -0,0 +1,20 @@
|
||||||
|
-- Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
-- or more contributor license agreements. See the NOTICE file
|
||||||
|
-- distributed with this work for additional information
|
||||||
|
-- regarding copyright ownership. The ASF licenses this file
|
||||||
|
-- to you 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.
|
||||||
|
|
||||||
|
--;
|
||||||
|
-- Schema upgrade cleanup from 4.17.1.0 to 4.18.0.0
|
||||||
|
--;
|
||||||
|
|
@ -0,0 +1,20 @@
|
||||||
|
-- Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
-- or more contributor license agreements. See the NOTICE file
|
||||||
|
-- distributed with this work for additional information
|
||||||
|
-- regarding copyright ownership. The ASF licenses this file
|
||||||
|
-- to you 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.
|
||||||
|
|
||||||
|
--;
|
||||||
|
-- Schema upgrade from 4.17.1.0 to 4.18.0.0
|
||||||
|
--;
|
||||||
Loading…
Reference in New Issue