mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
Merge branch '4.16' into main
This commit is contained in:
commit
b0bf069bcf
6
debian/changelog
vendored
6
debian/changelog
vendored
@ -1,3 +1,9 @@
|
|||||||
|
cloudstack (4.16.1.0-SNAPSHOT) unstable; urgency=low
|
||||||
|
|
||||||
|
* Update the version to 4.16.1.0-SNAPSHOT
|
||||||
|
|
||||||
|
-- the Apache CloudStack project <dev@cloudstack.apache.org> Wed, 10 Nov 2021 11:31:57 -0300
|
||||||
|
|
||||||
cloudstack (4.16.0.0) unstable; urgency=low
|
cloudstack (4.16.0.0) unstable; urgency=low
|
||||||
|
|
||||||
* Update the version to 4.16.0.0
|
* Update the version to 4.16.0.0
|
||||||
|
|||||||
@ -75,8 +75,8 @@
|
|||||||
<source>
|
<source>
|
||||||
def projectVersion = project.version
|
def projectVersion = project.version
|
||||||
String[] versionParts = projectVersion.tokenize('.')
|
String[] versionParts = projectVersion.tokenize('.')
|
||||||
pom.properties['cs.version'] = versionParts[0] + "." + versionParts[1]
|
pom.properties['cs.version'] = "4.16"
|
||||||
pom.properties['patch.version'] = versionParts[2]
|
pom.properties['patch.version'] = "0"
|
||||||
</source>
|
</source>
|
||||||
</configuration>
|
</configuration>
|
||||||
</execution>
|
</execution>
|
||||||
|
|||||||
@ -30,6 +30,7 @@ import java.util.Date;
|
|||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
|
|
||||||
import com.cloud.upgrade.dao.Upgrade41510to41520;
|
import com.cloud.upgrade.dao.Upgrade41510to41520;
|
||||||
|
import com.cloud.upgrade.dao.Upgrade41600to41610;
|
||||||
import org.apache.cloudstack.utils.CloudStackVersion;
|
import org.apache.cloudstack.utils.CloudStackVersion;
|
||||||
import org.apache.commons.lang.StringUtils;
|
import org.apache.commons.lang.StringUtils;
|
||||||
import org.apache.log4j.Logger;
|
import org.apache.log4j.Logger;
|
||||||
@ -201,6 +202,7 @@ public class DatabaseUpgradeChecker implements SystemIntegrityChecker {
|
|||||||
.next("4.15.0.0", new Upgrade41500to41510())
|
.next("4.15.0.0", new Upgrade41500to41510())
|
||||||
.next("4.15.1.0", new Upgrade41510to41520())
|
.next("4.15.1.0", new Upgrade41510to41520())
|
||||||
.next("4.15.2.0", new Upgrade41520to41600())
|
.next("4.15.2.0", new Upgrade41520to41600())
|
||||||
|
.next("4.16.0.0", new Upgrade41600to41610())
|
||||||
.build();
|
.build();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -55,6 +55,7 @@ import org.apache.cloudstack.storage.datastore.db.ImageStoreVO;
|
|||||||
import org.apache.cloudstack.storage.datastore.db.TemplateDataStoreDao;
|
import org.apache.cloudstack.storage.datastore.db.TemplateDataStoreDao;
|
||||||
import org.apache.cloudstack.storage.datastore.db.TemplateDataStoreVO;
|
import org.apache.cloudstack.storage.datastore.db.TemplateDataStoreVO;
|
||||||
import org.apache.commons.codec.digest.DigestUtils;
|
import org.apache.commons.codec.digest.DigestUtils;
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.apache.log4j.Logger;
|
import org.apache.log4j.Logger;
|
||||||
import org.ini4j.Ini;
|
import org.ini4j.Ini;
|
||||||
|
|
||||||
@ -120,6 +121,8 @@ public class SystemVmTemplateRegistration {
|
|||||||
@Inject
|
@Inject
|
||||||
ConfigurationDao configurationDao;
|
ConfigurationDao configurationDao;
|
||||||
|
|
||||||
|
private String systemVmTemplateVersion;
|
||||||
|
|
||||||
public SystemVmTemplateRegistration() {
|
public SystemVmTemplateRegistration() {
|
||||||
dataCenterDao = new DataCenterDaoImpl();
|
dataCenterDao = new DataCenterDaoImpl();
|
||||||
vmTemplateDao = new VMTemplateDaoImpl();
|
vmTemplateDao = new VMTemplateDaoImpl();
|
||||||
@ -131,6 +134,21 @@ public class SystemVmTemplateRegistration {
|
|||||||
configurationDao = new ConfigurationDaoImpl();
|
configurationDao = new ConfigurationDaoImpl();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Convenience constructor method to use when there is no system VM template change for a new version.
|
||||||
|
*/
|
||||||
|
public SystemVmTemplateRegistration(String systemVmTemplateVersion) {
|
||||||
|
this();
|
||||||
|
this.systemVmTemplateVersion = systemVmTemplateVersion;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getSystemVmTemplateVersion() {
|
||||||
|
if (StringUtils.isEmpty(systemVmTemplateVersion)) {
|
||||||
|
return String.format("%s.%s", CS_MAJOR_VERSION, CS_TINY_VERSION);
|
||||||
|
}
|
||||||
|
return systemVmTemplateVersion;
|
||||||
|
}
|
||||||
|
|
||||||
private static class SystemVMTemplateDetails {
|
private static class SystemVMTemplateDetails {
|
||||||
Long id;
|
Long id;
|
||||||
String uuid;
|
String uuid;
|
||||||
@ -658,7 +676,7 @@ public class SystemVmTemplateRegistration {
|
|||||||
hypervisorImageFormat.get(hypervisor), hypervisorGuestOsMap.get(hypervisor), storeUrlAndId.second(), null, filePath, true);
|
hypervisorImageFormat.get(hypervisor), hypervisorGuestOsMap.get(hypervisor), storeUrlAndId.second(), null, filePath, true);
|
||||||
Map<String, String> configParams = new HashMap<>();
|
Map<String, String> configParams = new HashMap<>();
|
||||||
configParams.put(RouterTemplateConfigurationNames.get(hypervisorAndTemplateName.first()), hypervisorAndTemplateName.second());
|
configParams.put(RouterTemplateConfigurationNames.get(hypervisorAndTemplateName.first()), hypervisorAndTemplateName.second());
|
||||||
configParams.put("minreq.sysvmtemplate.version", CS_MAJOR_VERSION + "." + CS_TINY_VERSION);
|
configParams.put("minreq.sysvmtemplate.version", getSystemVmTemplateVersion());
|
||||||
updateConfigurationParams(configParams);
|
updateConfigurationParams(configParams);
|
||||||
updateSystemVMEntries(templateId, hypervisorAndTemplateName.first());
|
updateSystemVMEntries(templateId, hypervisorAndTemplateName.first());
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
@ -809,7 +827,7 @@ public class SystemVmTemplateRegistration {
|
|||||||
// Change value of global configuration parameter router.template.* for the corresponding hypervisor and minreq.sysvmtemplate.version for the ACS version
|
// Change value of global configuration parameter router.template.* for the corresponding hypervisor and minreq.sysvmtemplate.version for the ACS version
|
||||||
Map<String, String> configParams = new HashMap<>();
|
Map<String, String> configParams = new HashMap<>();
|
||||||
configParams.put(RouterTemplateConfigurationNames.get(hypervisorAndTemplateName.getKey()), hypervisorAndTemplateName.getValue());
|
configParams.put(RouterTemplateConfigurationNames.get(hypervisorAndTemplateName.getKey()), hypervisorAndTemplateName.getValue());
|
||||||
configParams.put("minreq.sysvmtemplate.version", CS_MAJOR_VERSION + "." + CS_TINY_VERSION);
|
configParams.put("minreq.sysvmtemplate.version", getSystemVmTemplateVersion());
|
||||||
updateConfigurationParams(configParams);
|
updateConfigurationParams(configParams);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -854,11 +872,11 @@ public class SystemVmTemplateRegistration {
|
|||||||
registerTemplates(hypervisorsListInUse);
|
registerTemplates(hypervisorsListInUse);
|
||||||
break;
|
break;
|
||||||
} catch (final Exception e) {
|
} catch (final Exception e) {
|
||||||
throw new CloudRuntimeException(String.format("%s.%s %s SystemVm template not found. Cannot upgrade system Vms", CS_MAJOR_VERSION, CS_TINY_VERSION, hypervisorAndTemplateName.getKey()));
|
throw new CloudRuntimeException(String.format("%s %s SystemVm template not found. Cannot upgrade system Vms", getSystemVmTemplateVersion(), hypervisorAndTemplateName.getKey()));
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
LOGGER.warn(String.format("%s.%s %s SystemVm template not found. Cannot upgrade system Vms hypervisor is not used, so not failing upgrade",
|
LOGGER.warn(String.format("%s %s SystemVm template not found. Cannot upgrade system Vms hypervisor is not used, so not failing upgrade",
|
||||||
CS_MAJOR_VERSION, CS_TINY_VERSION, hypervisorAndTemplateName.getKey()));
|
getSystemVmTemplateVersion(), hypervisorAndTemplateName.getKey()));
|
||||||
// Update the latest template URLs for corresponding hypervisor
|
// Update the latest template URLs for corresponding hypervisor
|
||||||
VMTemplateVO templateVO = vmTemplateDao.findLatestTemplateByTypeAndHypervisor(hypervisorAndTemplateName.getKey(), Storage.TemplateType.SYSTEM);
|
VMTemplateVO templateVO = vmTemplateDao.findLatestTemplateByTypeAndHypervisor(hypervisorAndTemplateName.getKey(), Storage.TemplateType.SYSTEM);
|
||||||
if (templateVO != null) {
|
if (templateVO != null) {
|
||||||
|
|||||||
@ -0,0 +1,87 @@
|
|||||||
|
// 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 Upgrade41600to41610 implements DbUpgrade, DbUpgradeSystemVmTemplate {
|
||||||
|
|
||||||
|
final static Logger LOG = Logger.getLogger(Upgrade41600to41610.class);
|
||||||
|
private SystemVmTemplateRegistration systemVmTemplateRegistration;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String[] getUpgradableVersionRange() {
|
||||||
|
return new String[] {"4.16.0.0", "4.16.1.0"};
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getUpgradedVersion() {
|
||||||
|
return "4.16.1.0";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean supportsRollingUpgrade() {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public InputStream[] getPrepareScripts() {
|
||||||
|
final String scriptFile = "META-INF/db/schema-41600to41610.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-41600to41610-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("4.16.0");
|
||||||
|
}
|
||||||
|
|
||||||
|
@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)");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -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.16.0.0 to 4.16.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 from 4.16.0.0 to 4.16.1.0
|
||||||
|
--;
|
||||||
@ -22,7 +22,7 @@
|
|||||||
<name>Apache CloudStack Developer Tools - Checkstyle Configuration</name>
|
<name>Apache CloudStack Developer Tools - Checkstyle Configuration</name>
|
||||||
<groupId>org.apache.cloudstack</groupId>
|
<groupId>org.apache.cloudstack</groupId>
|
||||||
<artifactId>checkstyle</artifactId>
|
<artifactId>checkstyle</artifactId>
|
||||||
<version>4.16.0.0</version>
|
<version>4.16.1.0-SNAPSHOT</version>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||||
|
|||||||
@ -20,7 +20,7 @@
|
|||||||
FROM ubuntu:20.04
|
FROM ubuntu:20.04
|
||||||
|
|
||||||
MAINTAINER "Apache CloudStack" <dev@cloudstack.apache.org>
|
MAINTAINER "Apache CloudStack" <dev@cloudstack.apache.org>
|
||||||
LABEL Vendor="Apache.org" License="ApacheV2" Version="4.16.0.0"
|
LABEL Vendor="Apache.org" License="ApacheV2" Version="4.16.1.0-SNAPSHOT"
|
||||||
|
|
||||||
ARG DEBIAN_FRONTEND=noninteractive
|
ARG DEBIAN_FRONTEND=noninteractive
|
||||||
|
|
||||||
|
|||||||
@ -20,7 +20,7 @@
|
|||||||
FROM python:2
|
FROM python:2
|
||||||
|
|
||||||
MAINTAINER "Apache CloudStack" <dev@cloudstack.apache.org>
|
MAINTAINER "Apache CloudStack" <dev@cloudstack.apache.org>
|
||||||
LABEL Vendor="Apache.org" License="ApacheV2" Version="4.16.0.0"
|
LABEL Vendor="Apache.org" License="ApacheV2" Version="4.16.1.0-SNAPSHOT"
|
||||||
|
|
||||||
ENV WORK_DIR=/marvin
|
ENV WORK_DIR=/marvin
|
||||||
|
|
||||||
|
|||||||
@ -27,7 +27,7 @@ except ImportError:
|
|||||||
raise RuntimeError("python setuptools is required to build Marvin")
|
raise RuntimeError("python setuptools is required to build Marvin")
|
||||||
|
|
||||||
|
|
||||||
VERSION = "4.16.0.0"
|
VERSION = "4.16.1.0-SNAPSHOT"
|
||||||
|
|
||||||
setup(name="Marvin",
|
setup(name="Marvin",
|
||||||
version=VERSION,
|
version=VERSION,
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user