Skip to content

Commit

Permalink
Merge 4ed2238 into a5babc7
Browse files Browse the repository at this point in the history
  • Loading branch information
clems4ever committed Feb 12, 2019
2 parents a5babc7 + 4ed2238 commit fc6438f
Show file tree
Hide file tree
Showing 4 changed files with 64 additions and 3 deletions.
31 changes: 31 additions & 0 deletions src/js/components/ContainerSettingsComponent.jsx
Expand Up @@ -18,6 +18,7 @@ var ContainerSettingsComponent = React.createClass({

statics: {
fieldIds: Object.freeze({
containerType: "containerType",
dockerForcePullImage: "dockerForcePullImage",
dockerImage: "dockerImage",
dockerNetwork: "dockerNetwork",
Expand Down Expand Up @@ -162,6 +163,31 @@ var ContainerSettingsComponent = React.createClass({
);
},

getContainerTypeGroupComponent: function () {
var props = this.props;
var fieldIds = ContainerSettingsComponent.fieldIds;
var containerType = props.fields[fieldIds.containerType];
var label = "Containerizer";

return (
<FormGroupComponent
errorMessage={props.getErrorMessage(fieldIds.containerType)}
fieldId={fieldIds.containerType}
label={label}
value={containerType}
onChange={this.handleSingleFieldUpdate}>
<select defaultValue="">
<option value={ContainerConstants.TYPE.DOCKER}>
Docker
</option>
<option value={ContainerConstants.TYPE.MESOS}>
Mesos
</option>
</select>
</FormGroupComponent>
);
},

render: function () {
var props = this.props;
var fieldIds = ContainerSettingsComponent.fieldIds;
Expand Down Expand Up @@ -206,6 +232,11 @@ var ContainerSettingsComponent = React.createClass({
</FormGroupComponent>
</div>
</div>
<div className="row">
<div className="col-sm-6">
{this.getContainerTypeGroupComponent()}
</div>
</div>
<h4>Parameters</h4>
<div className="duplicable-list">{this.getParametersRows()}</div>
<div>
Expand Down
3 changes: 3 additions & 0 deletions src/js/stores/AppFormStore.js
Expand Up @@ -105,6 +105,7 @@ const resolveFieldIdToAppKeyMap = {
externalVolumes: "container.volumes",
cpus: "cpus",
disk: "disk",
containerType: "container.type",
dockerForcePullImage: "container.docker.forcePullImage",
dockerImage: "container.docker.image",
dockerNetwork: "networks",
Expand Down Expand Up @@ -138,6 +139,7 @@ const responseAttributePathToFieldIdMap = {
"/constraints({INDEX})": "constraints",
"/container/docker/forcePullImage": "dockerForcePullImage",
"/networks": "dockerImage",
"/container/type": "containerType",
"/container/docker/network": "dockerNetwork",
"/container/docker/privileged": "dockerPrivileged",
"/container/docker/parameters({INDEX})/key":
Expand Down Expand Up @@ -198,6 +200,7 @@ const responseAttributePathToFieldIdMap = {
const resolveAppKeyToFieldIdMap = {
"id": ["appId"],
"networks": ["dockerNetwork"],
"container.type": ["containerType"],
"container.docker.forcePullImage": ["dockerForcePullImage"],
"container.docker.image": ["dockerImage"],
"container.docker.parameters": ["dockerParameters"],
Expand Down
8 changes: 5 additions & 3 deletions src/js/stores/transforms/AppFormModelPostProcess.js
Expand Up @@ -44,9 +44,11 @@ const AppFormModelPostProcess = {
});
}

container.type = container.docker != null
? ContainerConstants.TYPE.DOCKER
: ContainerConstants.TYPE.MESOS;
if (container.type == null) {
container.type = container.docker != null
? ContainerConstants.TYPE.DOCKER
: ContainerConstants.TYPE.MESOS;
}

let isEmpty = (Util.isArray(container.volumes) &&
container.volumes.length === 0 ||
Expand Down
25 changes: 25 additions & 0 deletions src/test/scenarios/createApplication.test.js
Expand Up @@ -822,6 +822,31 @@ describe("Create Application", function () {
});
});

describe("the containerType field", function () {

it("updates to MESOS", function (done) {
AppFormStore.once(FormEvents.CHANGE, function () {
expectAsync(function () {
expect(AppFormStore.fields.containerType)
.to.equal("MESOS");
}, done);
});

FormActions.update("containerType", "MESOS");
});

it("updates to DOCKER", function (done) {
AppFormStore.once(FormEvents.CHANGE, function () {
expectAsync(function () {
expect(AppFormStore.fields.containerType)
.to.equal("DOCKER");
}, done);
});

FormActions.update("containerType", "DOCKER");
});
});

describe("the privileges field", function () {
it("updates correctly", function (done) {
AppFormStore.once(FormEvents.CHANGE, function () {
Expand Down

0 comments on commit fc6438f

Please sign in to comment.