import { inject, observer } from 'mobx-react';
import CreateInstance from 'pages/compute/containers/Instance/actions/StepCreate';
import { canImageCreateIronicInstance } from 'resources/glance/image';
import { canCreateIronicByEndpoint } from 'resources/nova/instance';
export class CreateIronic extends CreateInstance {
static id = 'ironic-create';
static title = t('Create Ironic Instance');
static path(item) {
return `/compute/ironic-instance/create?image=${item.id}&os_distro=${item.os_distro}`;
}
static policy = 'os_compute_api:servers:create:trusted_certs';
static allowed(item, containerProps) {
const { isAdminPage } = containerProps;
return Promise.resolve(
!isAdminPage &&
canCreateIronicByEndpoint() &&
canImageCreateIronicInstance(item)
);
}
}
export default inject('rootStore')(observer(CreateIronic));