You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by yu...@apache.org on 2012/11/07 05:00:25 UTC
svn commit: r1406442 [3/4] - in /incubator/ambari/branches/AMBARI-666: ./
ambari-web/ ambari-web/app/ ambari-web/app/assets/data/apps/
ambari-web/app/controllers/ ambari-web/app/controllers/installer/
ambari-web/app/controllers/main/ ambari-web/app/con...
Added: incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_1.js
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_1.js?rev=1406442&view=auto
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_1.js (added)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_1.js Wed Nov 7 04:00:21 2012
@@ -0,0 +1,60 @@
+/**
+ * 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.
+ */
+
+
+
+module.exports = {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1",
+ "Requests" : {
+ "id" : 1
+ },
+ "tasks" : [
+ {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1/tasks/1",
+ "Tasks" : {
+ "id" : "1",
+ "attempt_cnt" : "0",
+ "exit_code" : "999",
+ "stdout" : "",
+ "status" : "PENDING",
+ "command" : "INSTALL",
+ "start_time" : "-1",
+ "role" : "DATANODE",
+ "stderr" : "",
+ "host_name" : "localhost.localdomain",
+ "stage_id" : "1"
+ }
+ },
+ {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1/tasks/2",
+ "Tasks" : {
+ "id" : "2",
+ "attempt_cnt" : "0",
+ "exit_code" : "999",
+ "stdout" : "",
+ "status" : "PENDING",
+ "command" : "INSTALL",
+ "start_time" : "-1",
+ "role" : "NAMENODE",
+ "stderr" : "",
+ "host_name" : "localhost.localdomain",
+ "stage_id" : "1"
+ }
+ }
+ ]
+}
\ No newline at end of file
Added: incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_2.js
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_2.js?rev=1406442&view=auto
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_2.js (added)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_2.js Wed Nov 7 04:00:21 2012
@@ -0,0 +1,60 @@
+/**
+ * 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.
+ */
+
+
+
+module.exports = {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1",
+ "Requests" : {
+ "id" : 1
+ },
+ "tasks" : [
+ {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1/tasks/1",
+ "Tasks" : {
+ "id" : "1",
+ "attempt_cnt" : "0",
+ "exit_code" : "999",
+ "stdout" : "",
+ "status" : "QUEUED",
+ "command" : "INSTALL",
+ "start_time" : "-1",
+ "role" : "DATANODE",
+ "stderr" : "",
+ "host_name" : "localhost.localdomain",
+ "stage_id" : "1"
+ }
+ },
+ {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1/tasks/2",
+ "Tasks" : {
+ "id" : "2",
+ "attempt_cnt" : "0",
+ "exit_code" : "999",
+ "stdout" : "",
+ "status" : "QUEUED",
+ "command" : "INSTALL",
+ "start_time" : "-1",
+ "role" : "NAMENODE",
+ "stderr" : "",
+ "host_name" : "localhost.localdomain",
+ "stage_id" : "1"
+ }
+ }
+ ]
+}
\ No newline at end of file
Added: incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_3.js
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_3.js?rev=1406442&view=auto
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_3.js (added)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_3.js Wed Nov 7 04:00:21 2012
@@ -0,0 +1,60 @@
+/**
+ * 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.
+ */
+
+
+
+module.exports = {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1",
+ "Requests" : {
+ "id" : 1
+ },
+ "tasks" : [
+ {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1/tasks/1",
+ "Tasks" : {
+ "id" : "1",
+ "attempt_cnt" : "0",
+ "exit_code" : "999",
+ "stdout" : "",
+ "status" : "QUEUED",
+ "command" : "INSTALL",
+ "start_time" : "-1",
+ "role" : "DATANODE",
+ "stderr" : "",
+ "host_name" : "localhost.localdomain",
+ "stage_id" : "1"
+ }
+ },
+ {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1/tasks/2",
+ "Tasks" : {
+ "id" : "2",
+ "attempt_cnt" : "0",
+ "exit_code" : "999",
+ "stdout" : "",
+ "status" : "IN_PROGRESS",
+ "command" : "INSTALL",
+ "start_time" : "-1",
+ "role" : "NAMENODE",
+ "stderr" : "",
+ "host_name" : "localhost.localdomain",
+ "stage_id" : "1"
+ }
+ }
+ ]
+}
\ No newline at end of file
Added: incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_4.js
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_4.js?rev=1406442&view=auto
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_4.js (added)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_4.js Wed Nov 7 04:00:21 2012
@@ -0,0 +1,60 @@
+/**
+ * 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.
+ */
+
+
+
+module.exports = {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1",
+ "Requests" : {
+ "id" : 1
+ },
+ "tasks" : [
+ {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1/tasks/1",
+ "Tasks" : {
+ "id" : "1",
+ "attempt_cnt" : "0",
+ "exit_code" : "999",
+ "stdout" : "",
+ "status" : "IN_PROGRESS",
+ "command" : "INSTALL",
+ "start_time" : "-1",
+ "role" : "DATANODE",
+ "stderr" : "",
+ "host_name" : "localhost.localdomain",
+ "stage_id" : "1"
+ }
+ },
+ {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1/tasks/2",
+ "Tasks" : {
+ "id" : "2",
+ "attempt_cnt" : "0",
+ "exit_code" : "999",
+ "stdout" : "",
+ "status" : "COMPLETED",
+ "command" : "INSTALL",
+ "start_time" : "-1",
+ "role" : "NAMENODE",
+ "stderr" : "",
+ "host_name" : "localhost.localdomain",
+ "stage_id" : "1"
+ }
+ }
+ ]
+}
\ No newline at end of file
Added: incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_5.js
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_5.js?rev=1406442&view=auto
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_5.js (added)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_5.js Wed Nov 7 04:00:21 2012
@@ -0,0 +1,60 @@
+/**
+ * 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.
+ */
+
+
+
+module.exports = {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1",
+ "Requests" : {
+ "id" : 1
+ },
+ "tasks" : [
+ {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1/tasks/1",
+ "Tasks" : {
+ "id" : "1",
+ "attempt_cnt" : "0",
+ "exit_code" : "999",
+ "stdout" : "",
+ "status" : "COMPLETED",
+ "command" : "INSTALL",
+ "start_time" : "-1",
+ "role" : "DATANODE",
+ "stderr" : "",
+ "host_name" : "localhost.localdomain",
+ "stage_id" : "1"
+ }
+ },
+ {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1/tasks/2",
+ "Tasks" : {
+ "id" : "2",
+ "attempt_cnt" : "0",
+ "exit_code" : "999",
+ "stdout" : "",
+ "status" : "COMPLETED",
+ "command" : "INSTALL",
+ "start_time" : "-1",
+ "role" : "NAMENODE",
+ "stderr" : "",
+ "host_name" : "localhost.localdomain",
+ "stage_id" : "1"
+ }
+ }
+ ]
+}
\ No newline at end of file
Added: incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_6.js
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_6.js?rev=1406442&view=auto
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_6.js (added)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_6.js Wed Nov 7 04:00:21 2012
@@ -0,0 +1,60 @@
+/**
+ * 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.
+ */
+
+
+
+module.exports = {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1",
+ "Requests" : {
+ "id" : 1
+ },
+ "tasks" : [
+ {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1/tasks/1",
+ "Tasks" : {
+ "id" : "1",
+ "attempt_cnt" : "0",
+ "exit_code" : "999",
+ "stdout" : "",
+ "status" : "QUEUED",
+ "command" : "START",
+ "start_time" : "-1",
+ "role" : "DATANODE",
+ "stderr" : "",
+ "host_name" : "localhost.localdomain",
+ "stage_id" : "1"
+ }
+ },
+ {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1/tasks/2",
+ "Tasks" : {
+ "id" : "2",
+ "attempt_cnt" : "0",
+ "exit_code" : "999",
+ "stdout" : "",
+ "status" : "QUEUED",
+ "command" : "START",
+ "start_time" : "-1",
+ "role" : "NAMENODE",
+ "stderr" : "",
+ "host_name" : "localhost.localdomain",
+ "stage_id" : "1"
+ }
+ }
+ ]
+}
\ No newline at end of file
Added: incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_7.js
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_7.js?rev=1406442&view=auto
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_7.js (added)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_7.js Wed Nov 7 04:00:21 2012
@@ -0,0 +1,60 @@
+/**
+ * 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.
+ */
+
+
+
+module.exports = {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1",
+ "Requests" : {
+ "id" : 1
+ },
+ "tasks" : [
+ {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1/tasks/1",
+ "Tasks" : {
+ "id" : "1",
+ "attempt_cnt" : "0",
+ "exit_code" : "999",
+ "stdout" : "",
+ "status" : "QUEUED",
+ "command" : "START",
+ "start_time" : "-1",
+ "role" : "DATANODE",
+ "stderr" : "",
+ "host_name" : "localhost.localdomain",
+ "stage_id" : "1"
+ }
+ },
+ {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1/tasks/2",
+ "Tasks" : {
+ "id" : "2",
+ "attempt_cnt" : "0",
+ "exit_code" : "999",
+ "stdout" : "",
+ "status" : "IN_PROGRESS",
+ "command" : "START",
+ "start_time" : "-1",
+ "role" : "NAMENODE",
+ "stderr" : "",
+ "host_name" : "localhost.localdomain",
+ "stage_id" : "1"
+ }
+ }
+ ]
+}
\ No newline at end of file
Added: incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_8.js
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_8.js?rev=1406442&view=auto
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_8.js (added)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_8.js Wed Nov 7 04:00:21 2012
@@ -0,0 +1,60 @@
+/**
+ * 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.
+ */
+
+
+
+module.exports = {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1",
+ "Requests" : {
+ "id" : 1
+ },
+ "tasks" : [
+ {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1/tasks/1",
+ "Tasks" : {
+ "id" : "1",
+ "attempt_cnt" : "0",
+ "exit_code" : "999",
+ "stdout" : "",
+ "status" : "IN_PROGRESS",
+ "command" : "START",
+ "start_time" : "-1",
+ "role" : "DATANODE",
+ "stderr" : "",
+ "host_name" : "localhost.localdomain",
+ "stage_id" : "1"
+ }
+ },
+ {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1/tasks/2",
+ "Tasks" : {
+ "id" : "2",
+ "attempt_cnt" : "0",
+ "exit_code" : "999",
+ "stdout" : "",
+ "status" : "COMPLETED",
+ "command" : "START",
+ "start_time" : "-1",
+ "role" : "NAMENODE",
+ "stderr" : "",
+ "host_name" : "localhost.localdomain",
+ "stage_id" : "1"
+ }
+ }
+ ]
+}
\ No newline at end of file
Added: incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_9.js
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_9.js?rev=1406442&view=auto
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_9.js (added)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/data/mock/step9PolledData/pollData_9.js Wed Nov 7 04:00:21 2012
@@ -0,0 +1,60 @@
+/**
+ * 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.
+ */
+
+
+
+module.exports = {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1",
+ "Requests" : {
+ "id" : 1
+ },
+ "tasks" : [
+ {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1/tasks/1",
+ "Tasks" : {
+ "id" : "1",
+ "attempt_cnt" : "0",
+ "exit_code" : "999",
+ "stdout" : "",
+ "status" : "COMPLETED",
+ "command" : "START",
+ "start_time" : "-1",
+ "role" : "DATANODE",
+ "stderr" : "",
+ "host_name" : "localhost.localdomain",
+ "stage_id" : "1"
+ }
+ },
+ {
+ "href" : "http://localhost:8080/api/clusters/mycluster/requests/1/tasks/2",
+ "Tasks" : {
+ "id" : "2",
+ "attempt_cnt" : "0",
+ "exit_code" : "999",
+ "stdout" : "",
+ "status" : "COMPLETED",
+ "command" : "START",
+ "start_time" : "-1",
+ "role" : "NAMENODE",
+ "stderr" : "",
+ "host_name" : "localhost.localdomain",
+ "stage_id" : "1"
+ }
+ }
+ ]
+}
\ No newline at end of file
Modified: incubator/ambari/branches/AMBARI-666/ambari-web/app/data/service_components.js
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/data/service_components.js?rev=1406442&r1=1406441&r2=1406442&view=diff
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/data/service_components.js (original)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/data/service_components.js Wed Nov 7 04:00:21 2012
@@ -45,7 +45,7 @@ module.exports = new Ember.Set([
{
service_name: 'HDFS',
component_name: 'HDFS_CLIENT',
- display_name: 'HDFS Client',
+ display_name: 'Hadoop Client',
isMaster: false,
isClient: true,
description: 'Client component for HDFS'
@@ -116,16 +116,16 @@ module.exports = new Ember.Set([
},
{
service_name: 'PIG',
- component_name: 'PIG_CLIENT',
- display_name: 'Pig Client',
+ component_name: 'PIG',
+ display_name: 'Pig',
isMaster: false,
isClient: true,
description: ''
},
{
service_name: 'SQOOP',
- component_name: 'SQOOP_CLIENT',
- display_name: 'Sqoop Client',
+ component_name: 'SQOOP',
+ display_name: 'Sqoop',
isMaster: false,
isClient: true,
description: ''
Modified: incubator/ambari/branches/AMBARI-666/ambari-web/app/data/statusCodes.js
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/data/statusCodes.js?rev=1406442&r1=1406441&r2=1406442&view=diff
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/data/statusCodes.js (original)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/data/statusCodes.js Wed Nov 7 04:00:21 2012
@@ -21,6 +21,9 @@ module.exports = {
200: function () {
console.log("Status code 200: Success.");
},
+ 202: function () {
+ console.log("Status code 202: Success for creation.");
+ },
400: function () {
console.log("Error code 400: Bad Request.");
},
Modified: incubator/ambari/branches/AMBARI-666/ambari-web/app/messages.js
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/messages.js?rev=1406442&r1=1406441&r2=1406442&view=diff
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/messages.js (original)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/messages.js Wed Nov 7 04:00:21 2012
@@ -186,10 +186,8 @@ Em.I18n.translations = {
'services.service.start': 'Start',
'services.service.stop': 'Stop',
- 'services.service.start.popup.header': 'Confirmation',
- 'services.service.stop.popup.header': 'Confirmation',
- 'services.service.start.popup.body': 'Are you sure?',
- 'services.service.stop.popup.body': 'Are you sure?',
+ 'services.service.confirmation.header': 'Confirmation',
+ 'services.service.confirmation.body': 'Are you sure?',
'services.service.summary.version': 'Version',
'services.service.summary.nameNode': 'NameNode Web UI',
'services.service.summary.nameNodeUptime': 'NameNode Uptime',
@@ -225,6 +223,8 @@ Em.I18n.translations = {
'services.service.actions.run.smoke': 'Run Smoke Test',
'services.service.actions.maintenance': 'Maintenance',
+ 'services.add.header': 'Add Service Wizard',
+
'hosts.host.start.popup.header': 'Confirmation',
'hosts.host.stop.popup.header': 'Confirmation',
'hosts.host.start.popup.body': 'Are you sure?',
Modified: incubator/ambari/branches/AMBARI-666/ambari-web/app/models/host.js
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/models/host.js?rev=1406442&r1=1406441&r2=1406442&view=diff
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/models/host.js (original)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/models/host.js Wed Nov 7 04:00:21 2012
@@ -33,7 +33,49 @@ App.Host = DS.Model.extend({
cpuUsage: DS.attr('number'),
memoryUsage: DS.attr('number'),
networkUsage: DS.attr('number'),
- ioUsage: DS.attr('number')
+ ioUsage: DS.attr('number'),
+ lastHeartBeatTime: DS.attr('number'),
+
+
+ /**
+ * Return true if host not heartbeating last 180 seconds
+ */
+ isNotHeartBeating : function(){
+ return ((new Date()).getTime() - this.get('lastHeartBeatTime')) > 180 * 1000;
+ }.property('lastHeartBeatTime'),
+
+ updateHostStatus: function(){
+
+ /**
+ * Do nothing until load
+ */
+ if(!this.get('isLoaded') || !this.get('components').everyProperty('isLoaded', true)){
+ return;
+ }
+
+ var components = this.get('components');
+ var status;
+
+ var masterComponents = components.filterProperty('isMaster', true);
+ if(components.everyProperty('workStatus', "STARTED")){
+ status = 'LIVE';
+ } else if(false && this.get('isNotHeartBeating')){ //todo uncomment on real data
+ status = 'DEAD-YELLOW';
+ } else if(masterComponents.length > 0 && !masterComponents.everyProperty('workStatus', "STARTED")){
+ status = 'DEAD';
+ } else{
+ status = 'DEAD-ORANGE';
+ }
+
+ if(status){
+ this.set('healthStatus', status);
+ // console.log('set ' + status + ' for ' + this.get('hostName'));
+ }
+ }.observes('components.@each.workStatus'),
+
+ healthClass: function(){
+ return 'health-status-' + this.get('healthStatus');
+ }.property('healthStatus')
});
App.Host.FIXTURES = [
@@ -41,7 +83,7 @@ App.Host.FIXTURES = [
id: 1,
host_name: 'z_host1',
cluster_id: 1,
- components:[1, 3, 4, 5, 8],
+ components:[1, 3],
cpu: '2x2.5GHz',
memory: '8GB',
disk_usage: '40',
@@ -51,13 +93,14 @@ App.Host.FIXTURES = [
cpu_usage: 33,
memory_usage: 26,
network_usage: 36,
- io_usage: 39
+ io_usage: 39,
+ last_heart_beat_time : 1351536732366
},
{
id: 2,
host_name: 'host2',
cluster_id: 1,
- components:[1, 3, 4, 5, 8],
+ components:[4, 5, 8],
cpu: '2x2.5GHz',
memory: '8GB',
disk_usage: '20',
@@ -67,13 +110,14 @@ App.Host.FIXTURES = [
cpu_usage: 36,
memory_usage: 29,
network_usage: 56,
- io_usage: 69
+ io_usage: 69,
+ lastHeartBeatTime : 1351536732366
},
{
id: 3,
host_name: 'n_host3',
cluster_id: 2,
- components:[4, 5, 7],
+ components:[7],
health_status: 'DEAD-YELLOW',
cpu_usage: 23,
memory_usage: 16,
@@ -84,7 +128,7 @@ App.Host.FIXTURES = [
id: 4,
host_name: 'b_host4',
cluster_id: 2,
- components:[1, 2, 4, 5],
+ components:[],
health_status: 'DEAD',
cpu_usage: 23,
memory_usage: 36,
@@ -95,7 +139,7 @@ App.Host.FIXTURES = [
id: 5,
host_name: 'host5',
cluster_id: 1,
- components:[3, 4, 5],
+ components:[],
cpu: '2x2.5GHz',
memory: '8GB',
disk_usage: '20',
@@ -111,7 +155,7 @@ App.Host.FIXTURES = [
id: 6,
host_name: 'a_host6',
cluster_id: 1,
- components:[5],
+ components:[],
cpu: '2x2.5GHz',
memory: '8GB',
disk_usage: '20',
@@ -127,7 +171,7 @@ App.Host.FIXTURES = [
id: 7,
host_name: 'host7',
cluster_id: 1,
- components:[3, 4, 7],
+ components:[],
cpu: '2x2.5GHz',
memory: '8GB',
disk_usage: '20',
@@ -143,7 +187,7 @@ App.Host.FIXTURES = [
id: 8,
host_name: 'host8',
cluster_id: 1,
- components:[3, 4, 7],
+ components:[],
cpu: '2x2.5GHz',
memory: '8GB',
disk_usage: '20',
@@ -159,7 +203,7 @@ App.Host.FIXTURES = [
id: 9,
host_name: 'host9',
cluster_id: 1,
- components:[3, 4, 7],
+ components:[],
cpu: '2x2.5GHz',
memory: '8GB',
disk_usage: '20',
@@ -175,7 +219,7 @@ App.Host.FIXTURES = [
id: 10,
host_name: 'host10',
cluster_id: 1,
- components:[3, 4, 7],
+ components:[],
cpu: '2x2.5GHz',
memory: '8GB',
disk_usage: '20',
Modified: incubator/ambari/branches/AMBARI-666/ambari-web/app/models/job.js
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/models/job.js?rev=1406442&r1=1406441&r2=1406442&view=diff
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/models/job.js (original)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/models/job.js Wed Nov 7 04:00:21 2012
@@ -21,7 +21,7 @@ var App = require('app');
App.Job = DS.Model.extend({
jobId:DS.attr('string'),
- workflow:DS.belongsTo('App.Workflow'),
+ workflow:DS.belongsTo('App.Run'),
jobName:DS.attr('string'),
workflowEntityName:DS.attr('string'),
userName:DS.attr('string'),
Modified: incubator/ambari/branches/AMBARI-666/ambari-web/app/models/service.js
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/models/service.js?rev=1406442&r1=1406441&r2=1406442&view=diff
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/models/service.js (original)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/models/service.js Wed Nov 7 04:00:21 2012
@@ -62,7 +62,7 @@ App.Component = DS.Model.extend({
type:DS.attr('boolean'),
service:DS.belongsTo('App.Service'),
host:DS.belongsTo('App.Host'),
- workStatus:DS.attr('boolean'),
+ workStatus:DS.attr('string'),
isMaster:function () {
return this.get('type');
}.property('type'),
@@ -73,6 +73,13 @@ App.Component = DS.Model.extend({
decommissioned: DS.attr('boolean')
});
+App.Component.Status = {
+ started:"STARTED",
+ starting:"STARTING",
+ stopped:"STOPPED",
+ stopping:"STOPPING"
+}
+
App.Component.FIXTURES = [
{
id:1,
@@ -81,7 +88,7 @@ App.Component.FIXTURES = [
type:true,
service_id:1,
host_id:1,
- work_status:false
+ work_status:App.Component.Status.stopped
},
{
id:2,
@@ -90,7 +97,7 @@ App.Component.FIXTURES = [
type:true,
service_id:1,
host_id:2,
- work_status:true
+ work_status:App.Component.Status.started
},
{
id:3,
@@ -99,7 +106,7 @@ App.Component.FIXTURES = [
service_id:1,
type:false,
host_id:2,
- work_status:true,
+ work_status:App.Component.Status.started,
decommissioned: true
},
{
@@ -109,7 +116,7 @@ App.Component.FIXTURES = [
type:true,
service_id:2,
host_id:4,
- work_status:true
+ work_status:App.Component.Status.started
},
{
id:5,
@@ -118,7 +125,7 @@ App.Component.FIXTURES = [
type:false,
service_id:2,
host_id:4,
- work_status:true
+ work_status:App.Component.Status.started
},
{
id:6,
@@ -127,7 +134,7 @@ App.Component.FIXTURES = [
type:true,
service_id:3,
host_id:4,
- work_status:true
+ work_status:App.Component.Status.started
},
{
id:7,
@@ -136,7 +143,7 @@ App.Component.FIXTURES = [
type:false,
service_id:3,
host_id:2,
- work_status:true
+ work_status:App.Component.Status.started
},
{
id:8,
@@ -145,7 +152,7 @@ App.Component.FIXTURES = [
type:false,
service_id:5,
host_id:2,
- work_status:true
+ work_status:App.Component.Status.started
}
];
@@ -188,7 +195,7 @@ App.Service.FIXTURES = [
health_status:App.Service.Health.start,
work_status:true,
alerts:[3, 4],
- quick_links:[5, 6, 7, 8, 9, 10]
+ quick_links:[5, 6, 7, 8, 9, 10, 17, 18]
},
{
id:3,
@@ -198,7 +205,7 @@ App.Service.FIXTURES = [
health_status:App.Service.Health.dead,
work_status:false,
alerts:[5, 6],
- quick_links:[11, 12, 13, 14]
+ quick_links:[11, 12, 13, 14, 15, 16]
},
{
id:4,
@@ -235,71 +242,91 @@ App.QuickLinks.FIXTURES = [
{
id:1,
label:'NameNode UI',
- url:''
+ url:'http://%@:50070/dfshealth.jsp'
},
{
id:2,
label:'NameNode logs',
- url:''
+ url:'http://%@:50070/logs'
},
{
id:3,
label:'NameNode JMX',
- url:''
+ url:'http://%@:50070/jmx'
},
{
id:4,
label:'Thread Stacks',
- url:''
+ url:'http://%@:50070/stacks'
},
{
id:5,
label:'JobTracker UI',
- url:''
+ url:'http://%@:50030/jobtracker.jsp'
},
{
id:6,
label:'Scheduling Info',
- url:''
+ url:'http://%@:50030/scheduler'
},
{
id:7,
label:'Running Jobs',
- url:''
+ url:'http://%@:50030/jobtracker.jsp#running_jobs'
},
{
id:8,
label:'Retired Jobs',
- url:''
+ url:'http://%@:50030/jobtracker.jsp#retired_jobs'
},
{
id:9,
label:'JobHistory Server',
- url:''
+ url:'http://%@:51111/jobhistoryhome.jsp'
},
{
id:10,
label:'JobTracker Logs',
- url:''
+ url:'http://%@:50030/logs'
},
{
id:11,
label:'HBase Master UI',
- url:''
+ url:'http://%@:60010/master-status'
},
{
id:12,
label:'HBase Logs',
- url:''
+ url:'http://%@:60010/logs'
},
{
id:13,
label:'Zookeeper Info',
- url:''
+ url:'http://%@:60010/zk.jsp'
},
{
id:14,
label:'HBase Master JMX',
- url:''
+ url:'http://%@:60010/jmx'
+ },
+ {
+ id:15,
+ label:'Debug Dump',
+ url:'http://%@:60010/dump'
+ },
+ {
+ id:16,
+ label:'Thread Stacks',
+ url:'http://%@:60010/stacks'
+ },
+ {
+ id:17,
+ label:'JobTracker JMX',
+ url:'http://%@:50030/jmx'
+ },
+ {
+ id:18,
+ label:'Thread Stacks',
+ url:'http://%@:50030/stacks'
}
];
Modified: incubator/ambari/branches/AMBARI-666/ambari-web/app/models/service_config.js
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/models/service_config.js?rev=1406442&r1=1406441&r2=1406442&view=diff
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/models/service_config.js (original)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/models/service_config.js Wed Nov 7 04:00:21 2012
@@ -109,33 +109,33 @@ App.ServiceConfigProperty = Ember.Object
var masterComponentHostsInDB = App.db.getMasterComponentHosts();
switch (this.get('name')) {
case 'namenode.host':
- var temp = masterComponentHostsInDB.findProperty('component','NameNode');
+ var temp = masterComponentHostsInDB.findProperty('component','NAMENODE');
console.log("this is temp: " + temp.hostName);
this.set('value', temp.hostName);
break;
case 'snamenode.host':
- this.set('value', masterComponentHostsInDB.findProperty('component','SNameNode').hostName);
+ this.set('value', masterComponentHostsInDB.findProperty('component','SNAMENODE').hostName);
break;
case 'jobtracker.host':
- this.set('value', masterComponentHostsInDB.findProperty('component','JobTracker').hostName);
+ this.set('value', masterComponentHostsInDB.findProperty('component','JOBTRACKER').hostName);
break;
case 'hbasemaster.host':
- this.set('value', masterComponentHostsInDB.findProperty('component','HBase Master').hostName);
+ this.set('value', masterComponentHostsInDB.findProperty('component','HBASE_MASTER').hostName);
break;
case 'zookeeperserver.hosts':
- this.set('value', masterComponentHostsInDB.filterProperty('component','ZooKeeper').mapProperty('hostName'));
+ this.set('value', masterComponentHostsInDB.filterProperty('component','ZOOKEEPER_SERVER').mapProperty('hostName'));
break;
case 'hivemetastore.host':
- this.set('value', masterComponentHostsInDB.findProperty('component','Hive Metastore').hostName);
+ this.set('value', masterComponentHostsInDB.findProperty('component','HIVE_SERVER').hostName);
break;
case 'hive_ambari_host':
- this.set('value', masterComponentHostsInDB.findProperty('component','Hive Metastore').hostName);
+ this.set('value', masterComponentHostsInDB.findProperty('component','HIVE_SERVER').hostName);
break;
case 'oozieserver.host':
- this.set('value', masterComponentHostsInDB.findProperty('component','Oozie Server').hostName);
+ this.set('value', masterComponentHostsInDB.findProperty('component','OOZIE_SERVER').hostName);
break;
case 'oozie_ambari_host':
- this.set('value', masterComponentHostsInDB.findProperty('component','Oozie Server').hostName);
+ this.set('value', masterComponentHostsInDB.findProperty('component','OOZIE_SERVER').hostName);
break;
}
},
Modified: incubator/ambari/branches/AMBARI-666/ambari-web/app/router.js
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/router.js?rev=1406442&r1=1406441&r2=1406442&view=diff
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/router.js (original)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/router.js Wed Nov 7 04:00:21 2012
@@ -34,39 +34,20 @@ App.Router = Em.Router.extend({
},
clearAllSteps: function() {
- /*var totalSteps = 10
- for (var step = 1; step <= totalSteps; step++){
- this.get('installerStep' + step + 'Controller').clearStep();
- }*/
- },
-
- /*
- loadAllPriorSteps: function(step) {
- var stepVal = parseInt(step);
- switch(step){
- case '10':
- this.get('installerStep9Controller').loadStep();
- case '9':
- this.get('installerStep8Controller').loadStep();
- case '8':
- this.get('installerStep7Controller').loadStep();
- case '7':
- this.get('installerStep6Controller').loadStep();
- case '6':
- this.get('installerStep5Controller').loadStep();
- case '5':
- this.get('installerStep4Controller').loadStep();
- case '4':
- this.get('installerStep3Controller').loadStep();
- case '3':
- this.get('installerStep2Controller').loadStep();
- case '2':
- this.get('installerStep1Controller').loadStep();
- case '1':
-
- }
+ this.get('installerController.content').set('cluster',null);
+ /*this.get('installerController.content').set({
+ cluster: null,
+ hosts: null,
+ services: null,
+ hostsInfo: null,
+ slaveComponentHosts: null,
+ hostSlaveComponents: null,
+ masterComponentHosts: null,
+ hostToMasterComponent : null,
+ serviceConfigProperties: null
+ });*/
},
- */
+
setInstallerCurrentStep: function (currentStep, completed) {
App.db.setInstallerCurrentStep(currentStep, completed);
@@ -255,6 +236,7 @@ App.Router = Em.Router.extend({
console.log('logging off');
router.clearAllSteps();
App.db.cleanUp();
+ console.log("Log off: " + App.db.getClusterName());
router.set('loginController.loginName', '');
router.set('loginController.password', '');
router.transitionTo('login', context);
Modified: incubator/ambari/branches/AMBARI-666/ambari-web/app/routes/add_host_routes.js
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/routes/add_host_routes.js?rev=1406442&r1=1406441&r2=1406442&view=diff
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/routes/add_host_routes.js (original)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/routes/add_host_routes.js Wed Nov 7 04:00:21 2012
@@ -66,7 +66,10 @@ module.exports = Em.Route.extend({
controller.connectOutlet('wizardStep2', controller.get('content.hosts'));
},
- next: Em.Router.transitionTo('step2'),
+ next: function (router) {
+ router.transitionTo('step2');
+ App.db.setBootStatus(false);
+ },
evaluateStep: function (router) {
console.log('in addHost.step1:evaluateStep');
var addHostController = router.get('addHostController');
@@ -88,21 +91,18 @@ module.exports = Em.Route.extend({
var controller = router.get('addHostController');
controller.setCurrentStep('2', false);
controller.loadAllPriorSteps();
- router.get('wizardStep3Controller').set('data', controller.getHostList(true)); // workaround
- controller.connectOutlet('wizardStep3', controller.getHostList(true));
+ controller.connectOutlet('wizardStep3', controller.get('content'));
},
back: Em.Router.transitionTo('step1'),
- next: function (router) {
- console.log('in addHost.step2:next');
+ next: function (router, context) {
var addHostController = router.get('addHostController');
var wizardStep3Controller = router.get('wizardStep3Controller');
+ addHostController.saveConfirmedHosts(wizardStep3Controller);
- if (wizardStep3Controller.get('isSubmitDisabled') === false) {
- addHostController.saveConfirmedHosts(wizardStep3Controller);
- router.transitionTo('step3');
- }
+ App.db.setBootStatus(true);
+ App.db.setService(require('data/mock/services'));
+ router.transitionTo('step3');
},
-
/**
* Wrapper for remove host action.
* Since saving data stored in addHostController, we should call this from router
@@ -208,7 +208,13 @@ module.exports = Em.Route.extend({
controller.connectOutlet('wizardStep8', controller.get('content'));
},
back: Em.Router.transitionTo('step6'),
- next: Em.Router.transitionTo('step8')
+ next: function (router) {
+ var addHostController = router.get('addHostController');
+ var wizardStep8Controller = router.get('wizardStep8Controller');
+ addHostController.installServices();
+ addHostController.setInfoForStep9();
+ router.transitionTo('step8');
+ }
}),
step8: Em.Route.extend({
@@ -222,6 +228,12 @@ module.exports = Em.Route.extend({
controller.connectOutlet('wizardStep9', controller.get('content'));
},
back: Em.Router.transitionTo('step7'),
+ retry: function(router,context) {
+ var addHostController = router.get('addHostController');
+ var wizardStep9Controller = router.get('wizardStep9Controller');
+ addHostController.installServices();
+ wizardStep9Controller.navigateStep();
+ },
next: function (router) {
var addHostController = router.get('addHostController');
var wizardStep9Controller = router.get('wizardStep9Controller');
Added: incubator/ambari/branches/AMBARI-666/ambari-web/app/routes/add_service_routes.js
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/routes/add_service_routes.js?rev=1406442&view=auto
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/routes/add_service_routes.js (added)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/routes/add_service_routes.js Wed Nov 7 04:00:21 2012
@@ -0,0 +1,202 @@
+/**
+ * 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.
+ */
+
+module.exports = Em.Route.extend({
+ route: '/services/add',
+
+ enter: function (router) {
+ console.log('in /service/add:enter');
+
+ Ember.run.next(function () {
+ var addServiceController = router.get('addServiceController');
+ addServiceController.loadAllPriorSteps();
+ router.transitionTo('step' + addServiceController.get('currentStep'));
+ });
+
+ },
+
+ connectOutlets: function (router) {
+ console.log('in /service/add:connectOutlets');
+ router.get('mainController').connectOutlet('addService');
+ },
+
+ step1: Em.Route.extend({
+ route: '/step1',
+ connectOutlets: function (router) {
+ console.log('in addService.step1:connectOutlets');
+ var controller = router.get('addServiceController');
+ controller.setCurrentStep('1', false);
+ controller.set('hideBackButton', true);
+ controller.loadAllPriorSteps();
+ controller.connectOutlet('wizardStep4', controller.get('content.services'));
+ },
+ next: function (router) {
+ var addServiceController = router.get('addServiceController');
+ var wizardStep4Controller = router.get('wizardStep4Controller');
+ addServiceController.saveServices(wizardStep4Controller);
+ addServiceController.saveClients(wizardStep4Controller);
+ App.db.setMasterComponentHosts(undefined);
+ App.db.setHostToMasterComponent(undefined);
+ router.transitionTo('step2');
+ }
+ }),
+
+ step2: Em.Route.extend({
+ route: '/step2',
+ connectOutlets: function (router) {
+ console.log('in addService.step2:connectOutlets');
+ var controller = router.get('addServiceController');
+ controller.setCurrentStep('2', false);
+ controller.loadAllPriorSteps();
+ controller.set('hideBackButton', false);
+ controller.connectOutlet('wizardStep5', controller.get('content'));
+
+ },
+ back: Em.Router.transitionTo('step1'),
+ next: function (router) {
+ var addServiceController = router.get('addServiceController');
+ var wizardStep5Controller = router.get('wizardStep5Controller');
+ addServiceController.saveMasterComponentHosts(wizardStep5Controller);
+ App.db.setSlaveComponentHosts(undefined);
+ router.transitionTo('step3');
+ }
+ }),
+
+ step3: Em.Route.extend({
+ route: '/step3',
+ connectOutlets: function (router) {
+ console.log('in addService.step3:connectOutlets');
+ var controller = router.get('addServiceController');
+ controller.setCurrentStep('3', false);
+ controller.loadAllPriorSteps();
+ controller.connectOutlet('wizardStep6', controller.get('content'));
+ },
+ back: Em.Router.transitionTo('step2'),
+ next: function (router) {
+ var addServiceController = router.get('addServiceController');
+ var wizardStep6Controller = router.get('wizardStep6Controller');
+
+ if (wizardStep6Controller.validate()) {
+ addServiceController.saveSlaveComponentHosts(wizardStep6Controller);
+ App.db.setServiceConfigProperties(null);
+ router.transitionTo('step4');
+ }
+ }
+ }),
+
+ step4: Em.Route.extend({
+ route: '/step4',
+ connectOutlets: function (router) {
+ console.log('in addService.step4:connectOutlets');
+ var controller = router.get('addServiceController');
+ controller.setCurrentStep('4', false);
+ controller.loadAllPriorSteps();
+ controller.connectOutlet('wizardStep7', controller.get('content'));
+ },
+ back: Em.Router.transitionTo('step3'),
+ next: function (router) {
+ var addServiceController = router.get('addServiceController');
+ var wizardStep7Controller = router.get('wizardStep7Controller');
+ addServiceController.saveServiceConfigProperties(wizardStep7Controller);
+ router.transitionTo('step5');
+ }
+ }),
+
+ step5: Em.Route.extend({
+ route: '/step5',
+ connectOutlets: function (router, context) {
+ console.log('in addService.step5:connectOutlets');
+ var controller = router.get('addServiceController');
+ controller.setCurrentStep('5', false);
+ controller.loadAllPriorSteps();
+ controller.connectOutlet('wizardStep8', controller.get('content'));
+ },
+ back: Em.Router.transitionTo('step4'),
+ next: function (router) {
+ var addServiceController = router.get('addServiceController');
+ var wizardStep8Controller = router.get('wizardStep8Controller');
+ addServiceController.installServices();
+ addServiceController.setInfoForStep9();
+ router.transitionTo('step6');
+ }
+ }),
+
+ step6: Em.Route.extend({
+ route: '/step6',
+ connectOutlets: function (router, context) {
+ console.log('in addService.step6:connectOutlets');
+ var controller = router.get('addServiceController');
+ controller.setInfoForStep9();
+ controller.setCurrentStep('6', false);
+ controller.loadAllPriorSteps();
+ controller.connectOutlet('wizardStep9', controller.get('content'));
+ },
+ back: Em.Router.transitionTo('step5'),
+ retry: function(router,context) {
+ var addServiceController = router.get('addSrviceController');
+ var wizardStep9Controller = router.get('wizardStep9Controller');
+ addServiceController.installServices();
+ wizardStep9Controller.navigateStep();
+ },
+ next: function (router) {
+ var addServiceController = router.get('addServiceController');
+ var wizardStep9Controller = router.get('wizardStep9Controller');
+ addServiceController.saveClusterInfo(wizardStep9Controller);
+ addServiceController.saveInstalledHosts(wizardStep9Controller);
+ router.transitionTo('step7');
+ }
+ }),
+
+ step7: Em.Route.extend({
+ route: '/step7',
+ connectOutlets: function (router, context) {
+ console.log('in addService.step7:connectOutlets');
+ var controller = router.get('addServiceController');
+ controller.setCurrentStep('7', false);
+ controller.loadAllPriorSteps();
+ controller.connectOutlet('wizardStep10');
+ },
+ back: Em.Router.transitionTo('step6'),
+ complete: function (router, context) {
+ if (true) { // this function will be moved to installerController where it will validate
+ var addServiceController = router.get('addServiceController');
+ addServiceController.setCurrentStep('1', false);
+ router.transitionTo('services');
+ }
+ }
+ }),
+
+ gotoStep1: Em.Router.transitionTo('step1'),
+
+ gotoStep2: Em.Router.transitionTo('step2'),
+
+ gotoStep3: Em.Router.transitionTo('step3'),
+
+ gotoStep4: Em.Router.transitionTo('step4'),
+
+ gotoStep5: Em.Router.transitionTo('step5'),
+
+ gotoStep6: Em.Router.transitionTo('step6'),
+
+ gotoStep7: Em.Router.transitionTo('step7'),
+
+ backToServices: function (router) {
+ router.transitionTo('services');
+ }
+
+});
Modified: incubator/ambari/branches/AMBARI-666/ambari-web/app/routes/installer.js
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/routes/installer.js?rev=1406442&r1=1406441&r2=1406442&view=diff
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/routes/installer.js (original)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/routes/installer.js Wed Nov 7 04:00:21 2012
@@ -79,37 +79,67 @@ module.exports = Em.Route.extend({
route: '/step2',
connectOutlets: function (router, context) {
router.setNavigationFlow('step2');
+ var controller = router.get('installerController');
router.setInstallerCurrentStep('2', false);
- router.get('installerController').connectOutlet('installerStep2');
+
+ var controller = router.get('installerController');
+ controller.loadAllPriorSteps();
+ controller.connectOutlet('wizardStep2', controller.get('content.hosts'));
},
back: Em.Router.transitionTo('step1'),
- next: function (router, context) {
+ next: function (router) {
+ router.transitionTo('step3');
App.db.setBootStatus(false);
- var hosts = App.db.getHosts();
- var hostInfo = {};
- for (var index in hosts) {
- hostInfo[index] = {
- name: hosts[index].name,
- bootStatus: 'pending'
- };
+ },
+
+ /**
+ * Validate form before doing anything
+ * @param router
+ */
+ evaluateStep: function (router) {
+
+ var controller = router.get('installerController');
+ var wizardStep2Controller = router.get('wizardStep2Controller');
+
+ wizardStep2Controller.set('hasSubmitted', true);
+
+ if (!wizardStep2Controller.get('isSubmitDisabled')) {
+ App.db.setBootStatus(false);
+ controller.saveHosts(wizardStep2Controller);
+ wizardStep2Controller.evaluateStep();
}
- App.db.setHosts(hostInfo);
- router.transitionTo('step3');
}
}),
step3: Em.Route.extend({
route: '/step3',
- connectOutlets: function (router, context) {
- router.setNavigationFlow('step3');
+ connectOutlets: function (router) {
+ console.log('in installer.step3:connectOutlets');
+ var controller = router.get('installerController');
router.setInstallerCurrentStep('3', false);
- router.get('installerController').connectOutlet('installerStep3');
+ controller.loadAllPriorSteps();
+ controller.connectOutlet('wizardStep3', controller.get('content'));
},
back: Em.Router.transitionTo('step2'),
next: function (router, context) {
+ var installerController = router.get('installerController');
+ var wizardStep3Controller = router.get('wizardStep3Controller');
+ installerController.saveConfirmedHosts(wizardStep3Controller);
+
App.db.setBootStatus(true);
App.db.setService(require('data/mock/services'));
router.transitionTo('step4');
+ },
+ /**
+ * Wrapper for remove host action.
+ * Since saving data stored in installerController, we should call this from router
+ * @param router
+ * @param context Array of hosts to delete
+ */
+ removeHosts: function (router, context) {
+ console.log('in installer.step2.removeHosts:hosts to delete ', context);
+ var controller = router.get('installerController');
+ controller.removeHosts(context);
}
}),
@@ -118,12 +148,13 @@ module.exports = Em.Route.extend({
connectOutlets: function (router, context) {
router.setNavigationFlow('step4');
router.setInstallerCurrentStep('4', false);
-
var controller = router.get('installerController');
controller.loadAllPriorSteps();
+ controller.loadServices();
controller.connectOutlet('wizardStep4', controller.get('content.services'));
},
back: Em.Router.transitionTo('step3'),
+
next: function (router) {
var controller = router.get('installerController');
var wizardStep4Controller = router.get('wizardStep4Controller');
@@ -160,18 +191,19 @@ module.exports = Em.Route.extend({
connectOutlets: function (router, context) {
router.setNavigationFlow('step6');
router.setInstallerCurrentStep('6', false);
-
var controller = router.get('installerController');
controller.loadAllPriorSteps();
controller.connectOutlet('wizardStep6', controller.get('content'));
},
back: Em.Router.transitionTo('step5'),
+
next: function (router) {
var controller = router.get('installerController');
var wizardStep6Controller = router.get('wizardStep6Controller');
if (wizardStep6Controller.validate()) {
controller.saveSlaveComponentHosts(wizardStep6Controller);
+ controller.get('content').set('serviceConfigProperties', null);
App.db.setServiceConfigProperties(null);
router.transitionTo('step7');
}
@@ -187,10 +219,10 @@ module.exports = Em.Route.extend({
controller.connectOutlet('wizardStep7', controller.get('content'));
},
back: Em.Router.transitionTo('step6'),
- next: function(router){
+ next: function (router) {
var installerController = router.get('installerController');
var wizardStep7Controller = router.get('wizardStep7Controller');
- installerController.saveServiceConfigProperties( wizardStep7Controller );
+ installerController.saveServiceConfigProperties(wizardStep7Controller);
router.transitionTo('step8');
}
}),
@@ -205,7 +237,13 @@ module.exports = Em.Route.extend({
controller.connectOutlet('wizardStep8', controller.get('content'));
},
back: Em.Router.transitionTo('step7'),
- next: Em.Router.transitionTo('step9')
+ next: function (router) {
+ var installerController = router.get('installerController');
+ var wizardStep8Controller = router.get('wizardStep8Controller');
+ installerController.installServices();
+ installerController.setInfoForStep9();
+ router.transitionTo('step9');
+ }
}),
step9: Em.Route.extend({
@@ -213,17 +251,22 @@ module.exports = Em.Route.extend({
connectOutlets: function (router, context) {
console.log('in installer.step9:connectOutlets');
var controller = router.get('installerController');
- controller.setInfoForStep9();
router.setInstallerCurrentStep('9', false);
controller.loadAllPriorSteps();
controller.connectOutlet('wizardStep9', controller.get('content'));
},
back: Em.Router.transitionTo('step8'),
+ retry: function(router,context) {
+ var installerController = router.get('installerController');
+ var wizardStep9Controller = router.get('wizardStep9Controller');
+ installerController.installServices();
+ wizardStep9Controller.navigateStep();
+ },
next: function (router) {
- var addHostController = router.get('installerController');
+ var installerController = router.get('installerController');
var wizardStep9Controller = router.get('wizardStep9Controller');
- addHostController.saveClusterInfo(wizardStep9Controller);
- addHostController.saveInstalledHosts(wizardStep9Controller);
+ installerController.saveClusterInfo(wizardStep9Controller);
+ installerController.saveInstalledHosts(wizardStep9Controller);
router.transitionTo('step10');
}
}),
@@ -231,26 +274,6 @@ module.exports = Em.Route.extend({
step10: Em.Route.extend({
route: '/step10',
connectOutlets: function (router, context) {
- router.setNavigationFlow('step10');
- router.setInstallerCurrentStep('10', false);
- router.get('installerController').connectOutlet('installerStep10');
- },
- back: Em.Router.transitionTo('step9'),
-
- complete: function (router, context) {
- if (true) { // this function will be moved to installerController where it will validate
- router.setInstallerCurrentStep('1', true);
- router.setSection('main');
- router.transitionTo('main');
- } else {
- console.log('cluster installation failure');
- }
- }
- }),
-
- step10: Em.Route.extend({
- route: '/step10',
- connectOutlets: function (router, context) {
console.log('in installer.step10:connectOutlets');
var controller = router.get('installerController');
router.setInstallerCurrentStep('10', false);
Modified: incubator/ambari/branches/AMBARI-666/ambari-web/app/routes/main.js
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/routes/main.js?rev=1406442&r1=1406441&r2=1406442&view=diff
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/routes/main.js (original)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/routes/main.js Wed Nov 7 04:00:21 2012
@@ -366,9 +366,12 @@ module.exports = Em.Route.extend({
router.transitionTo(event.context);
}
}),
- showService:Em.Router.transitionTo('service')
+ showService:Em.Router.transitionTo('service'),
+ addService:Em.Router.transitionTo('serviceAdd')
}),
+ serviceAdd:require('routes/add_service_routes'),
+
selectService:Em.Route.transitionTo('services.service'),
selectHost:function (router, event) {
router.get('mainHostDetailsController').setBack(false);
Modified: incubator/ambari/branches/AMBARI-666/ambari-web/app/styles/application.less
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/styles/application.less?rev=1406442&r1=1406441&r2=1406442&view=diff
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/styles/application.less (original)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/styles/application.less Wed Nov 7 04:00:21 2012
@@ -34,7 +34,7 @@ html, body {
@footer-height: 100px;
#main {
- overflow: auto;
+ overflow: visible;
padding-bottom: @footer-height;
}
@@ -192,7 +192,7 @@ h1 {
color: #FF4B4B;
}
-#installer, #add-host {
+#installer, #add-host, #add-service {
h2 {
margin-top: 0;
}
@@ -202,7 +202,7 @@ h1 {
.btn-area {
margin-top: 20px;
}
- #installer-content, #add-host-content {
+ #installer-content, #add-host-content, #add-service-content {
padding: 25px;
background-color: #fff;
@@ -781,16 +781,25 @@ a:focus {
margin: 4px 5px 0 0;
width: 13px;
}
- ul#filter-dropdown li {
- display: block;
- padding: 3px 0 3px 5px;
- line-height: 20px;
- }
- ul#filter-dropdown li input[type="checkbox"] {
- margin-top: 0;
- margin-right: 2px;
- margin-bottom: 2px;
- margin: 0 2px 2px;
+ ul#filter-dropdown {
+ padding: 5px 25px 5px 0;
+
+ li {
+ display: block;
+ padding: 3px 0 3px 5px;
+ line-height: 20px;
+
+ label.checkbox {
+ padding-left: 3px;
+ }
+
+ input[type="checkbox"] {
+ margin-top: 0;
+ margin-right: 2px;
+ margin-bottom: 2px;
+ margin: 0 2px 2px;
+ }
+ }
}
}
.open-group > .dropdown-menu {
@@ -847,6 +856,34 @@ a:focus {
}
#host-details {
+ .component-operation-button{
+ background-color: #E5E5E5;
+ background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#E5E5E5), to(#F1F1F1));
+ background-image: -webkit-linear-gradient(top, #E5E5E5, #F1F1F1);
+ background-image: -o-linear-gradient(top, #E5E5E5, #F1F1F1);
+ background-image: linear-gradient(to bottom, #E5E5E5, #F1F1F1);
+ background-image: -moz-linear-gradient(top, #E5E5E5, #F1F1F1);
+ background-repeat: repeat-x;
+ color:#000000;
+ }
+ .caret{
+ border-top-color: #000000;
+ border-bottom-color: #000000;
+ }
+ .health-status-STARTED, .health-status-STARTING {
+ background-image: @status-live-marker;
+ background-repeat: no-repeat;
+ background-position: 0px 4px;
+ }
+ .health-status-STOPPED, .health-status-STOPPING {
+ background-image: @status-dead-marker;
+ background-repeat: no-repeat;
+ background-position: 0px 4px;
+ }
+ .span3.host-components {
+ width: 300px;
+ }
+
.health-status-LIVE {
background-image: @status-live-marker;
background-repeat: no-repeat;
@@ -903,6 +940,13 @@ a:focus {
}
.host-components .btn-group {
margin: 0 5px 10px 0;
+ .components-health{
+ margin-top: 4px;
+ width:13px;
+ height: 13px;
+ float:left;
+ background-position: center center;
+ }
}
}
.background-operations {
@@ -1378,6 +1422,10 @@ ul.filter {
/* CHARTS END */
/* UNIVERSAL STYLES */
+.align-right {
+ text-align: right;
+}
+
.left {
float: left;
}
@@ -1552,13 +1600,18 @@ ul.inline li {
/* End Carousel*/
-#add-host .back,
-#add-service .back {
+#add-host .back{
display: block;
width: 105px;
margin-bottom: 10px;
}
+#add-service .back{
+ display: block;
+ width: 130px;
+ margin-bottom: 10px;
+}
+
#step8-content {
max-height: 570px;
}
\ No newline at end of file
Modified: incubator/ambari/branches/AMBARI-666/ambari-web/app/styles/apps.less
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/styles/apps.less?rev=1406442&r1=1406441&r2=1406442&view=diff
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/styles/apps.less (original)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/styles/apps.less Wed Nov 7 04:00:21 2012
@@ -1,41 +1,81 @@
-#apps {
+#apps{
+ .breadcrumbs {
+ padding-bottom: 16px;
+ margin-left: 16px;
+ }
+ .table thead th{
+ vertical-align:top;
+ }
+ .avg-table td {
+ text-align:center;
+ border:none;
+ }
+ td.avg-star{
+ border-left:1px solid #DDD;
+ }
+ .a {
+ width:25px;
+ height: 25px;
+ background-position: center center;
+ background-repeat: no-repeat;
+ position: relative;
+ left:50%;
+ margin-left:-13px;
+ margin-top: 36px;
+ font-size:30px;
+ color:red;
+ }
+ .avg-info {
+ font-size:16px;
+ font-weight:700;
+ }
+ .compare-info {
+ font-size:12px;
+ }
.search-bar {
- float: right;
- margin-top: -40px;
+ float:right;
+ }
+ .clear {
+ clear:both;
}
.dataTable {
border: 1px solid silver;
th {
- border-top: none;
+ border-top:none;
}
}
- .dataTables_wrapper {
- margin-top: 10px;
+ .app-table-row.hover{
+ opacity:0.8 ;
+ }
+ .app-table-row{
+ cursor: pointer;
}
#filter_info {
- padding-top: 10px;
+ float:left;
+ padding-top:10px;
}
.page-bar {
border: 1px solid silver;
- text-align: right;
+ text-align:right;
div {
display: inline-block;
- margin: 0 10px;
+ margin:0 10px;
}
.dataTables_length {
label {
- display: inline;
+ display:inline;
}
select {
margin-bottom: 4px;
margin-top: 4px;
- width: 70px;
+ width:70px;
}
}
.dataTables_paginate {
a {
- padding: 0 5px;
+ padding:0 5px;
}
}
}
}
+
Modified: incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/apps.hbs
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/apps.hbs?rev=1406442&r1=1406441&r2=1406442&view=diff
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/apps.hbs (original)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/apps.hbs Wed Nov 7 04:00:21 2012
@@ -16,50 +16,77 @@
* limitations under the License.
-->
<div id="apps">
+ <div class="breadcrumbs">
+ <a href='#' {{action "routeHome" target="controller"}}><i class="icon-home"></i></a> /
+ <strong>Apps</strong>
+ </div>
+ <table class="table table-bordered table-stripe avg-table" >
+ <tbody>
+ <tr >
+ <td rowspan="3" class="avg-star"><div class="icon-star a"></div></td>
+ <td></td>
+ <td>Jobs</td>
+ <td>Input</td>
+ <td>Output</td>
+ <td>Duration</td>
+ <td>Oldest</td>
+ <td>Most Recent</td>
+ </tr>
+ <tr class="avg-info">
+ <td>Avg</td>
+ <td>43</td>
+ <td>200</td>
+ <td>10 mb</td>
+ <td>00:00:58</td>
+ <td>2012-07-22</td>
+ <td>2012-07-24</td>
+ </tr>
+ <tr class="compare-info">
+
+ <td>Min / Max</td>
+ <td>3 / 128</td>
+ <td>10kb / 248mb</td>
+ <td>5kb / 18mb</td>
+ <td>00:00:10 / 00:01:20</td>
+ <td></td>
+ <td></td>
+ </tr>
+ </tbody>
+ </table>
<div id="filter_info" class="row">
- <div class="span3">Show: <a href="javascript:void(0)">Filtered (400)</a> | <a href="javascript:void(0)">Starred (20)</a></div>
- <div class="span2"><a href="javascript:void(0)">Clear filters</a> | <a href="javascript:void(0)">Clear stars</a></div>
+ <div class="span3">Show: <a href="javascript:void(0)">Filtered ({{view.filtered}})</a> | <a href="javascript:void(0)">Starred (20)</a></div>
+ <div class="span2"><a href="#" {{action "clearFilters" target="view"}}>Clear filters</a> | <a href="javascript:void(0)">Clear stars</a></div>
</div>
<div>
</div>
<table class="table table-striped" id="dataTable">
<thead>
<tr>
- <th>App ID<i class="icon-question-sign"></i></th>
- <th>Name<i class="icon-question-sign"></i></th>
- <th>Type<i class="icon-question-sign"></i></th>
- <th>User<i class="icon-question-sign"></i></th>
- <th>Jobs<i class="icon-question-sign"></i></th>
- <th>Input<i class="icon-question-sign"></i></th>
- <th>Output<i class="icon-question-sign"></i></th>
- <th>Duration<i class="icon-question-sign"></i></th>
+ <th>App ID <i class="icon-question-sign"></i></th>
+ <th>Name <i class="icon-question-sign"></i></th>
+ <th>Type <i class="icon-question-sign"></i></th>
+ <th>User <i class="icon-question-sign"></i></th>
+ <th>Jobs <i class="icon-question-sign"></i></th>
+ <th>Input <i class="icon-question-sign"></i></th>
+ <th>Output <i class="icon-question-sign"></i></th>
+ <th>Duration <i class="icon-question-sign"></i></th>
<th>Run Date</th>
</tr>
<tr>
<th>{{view view.appidFilterView}}</th>
- <th><input class="input-small" type="text" placeholder="Name"/></th>
+ <th>{{view view.nameFilterView}}</th>
<th>{{view view.typeSelectView}}</th>
- <th><input class="input-mini" type="text" placeholder="User"/></th>
- <th><input class="input-mini" type="text" placeholder="Jobs"/></th>
- <th><input class="input-mini" type="text" placeholder="Input"/></th>
- <th><input class="input-mini" type="text" placeholder="Output"/></th>
- <th><input class="input-mini" type="text" placeholder="Duration"/></th>
+ <th>{{view view.userFilterView}}</th>
+ <th>{{view view.jobsFilterView}}</th>
+ <th>{{view view.inputFilterView}}</th>
+ <th>{{view view.outputFilterView}}</th>
+ <th>{{view view.durationFilterView}}</th>
<th>{{view view.rundateSelectView}}</th>
</tr>
</thead>
<tbody>
{{#each run in view.content}}
- <tr>
- <td><i class="icon-star"></i> <a href="javascript:void(0)">ID {{run.appId}}</a></td>
- <td>{{run.appName}}</td>
- <td>{{run.type}}</td>
- <td>{{run.userName}}</td>
- <td>{{run.numJobsTotal}}</td>
- <td>10MB</td>
- <td>30MB</td>
- <td>00:15:32</td>
- <td>{{run.lastUpdateTime}}</td>
- </tr>
+ {{view view.containerRow runBinding="run" currentViewBinding="view.appTableRow"}}
{{/each}}
</tbody>
</table>
Added: incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/apps/list_row.hbs
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/apps/list_row.hbs?rev=1406442&view=auto
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/apps/list_row.hbs (added)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/apps/list_row.hbs Wed Nov 7 04:00:21 2012
@@ -0,0 +1,27 @@
+<!--
+* 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.
+-->
+
+<td><i class="icon-star"></i> <a href="javascript:void(0)">ID {{run.appId}}</a></td>
+<td>{{run.appName}}</td>
+<td>{{run.type}}</td>
+<td>{{run.userName}}</td>
+<td>{{run.numJobsTotal}}</td>
+<td>10MB</td>
+<td>30MB</td>
+<td>00:15:32</td>
+<td>{{run.lastUpdateTime}}</td>
\ No newline at end of file
Modified: incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/dashboard/service/hbase.hbs
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/dashboard/service/hbase.hbs?rev=1406442&r1=1406441&r2=1406442&view=diff
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/dashboard/service/hbase.hbs (original)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/dashboard/service/hbase.hbs Wed Nov 7 04:00:21 2012
@@ -74,16 +74,18 @@
{{view view.Chart}}
<div class="chartLabel">{{t dashboard.services.hbase.chart.label}}</div>
{{#if view.service.quickLinks.length}}
+ {{#view App.QuickViewLinks contentBinding="view.service"}}
<div class="btn-group">
<a class="btn btn-mini dropdown-toggle" data-toggle="dropdown" href="#">
Quick Links
<span class="caret"></span>
</a>
<ul class="dropdown-menu">
- {{#each view.service.quickLinks}}
- <li><a href="javascript:void(null)">{{label}}</a></li>
+ {{#each view.quickLinks}}
+ <li><a {{bindAttr href="url"}}>{{label}}</a></li>
{{/each}}
</ul>
</div>
+ {{/view}}
{{/if}}
</div>
\ No newline at end of file
Modified: incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/dashboard/service/hdfs.hbs
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/dashboard/service/hdfs.hbs?rev=1406442&r1=1406441&r2=1406442&view=diff
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/dashboard/service/hdfs.hbs (original)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/dashboard/service/hdfs.hbs Wed Nov 7 04:00:21 2012
@@ -85,16 +85,18 @@
{{view view.Chart}}
<div class="chartLabel">{{t dashboard.services.hdfs.chart.label}}</div>
{{#if view.service.quickLinks.length}}
- <div class="btn-group">
- <a class="btn btn-mini dropdown-toggle" data-toggle="dropdown" href="#">
- Quick Links
- <span class="caret"></span>
- </a>
- <ul class="dropdown-menu">
- {{#each view.service.quickLinks}}
- <li><a href="javascript:void(null)">{{label}}</a></li>
- {{/each}}
- </ul>
- </div>
+ {{#view App.QuickViewLinks contentBinding="view.service"}}
+ <div class="btn-group">
+ <a class="btn btn-mini dropdown-toggle" data-toggle="dropdown" href="#">
+ Quick Links
+ <span class="caret"></span>
+ </a>
+ <ul class="dropdown-menu">
+ {{#each view.quickLinks}}
+ <li><a {{bindAttr href="url"}}>{{label}}</a></li>
+ {{/each}}
+ </ul>
+ </div>
+ {{/view}}
{{/if}}
</div>
\ No newline at end of file
Modified: incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/dashboard/service/mapreduce.hbs
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/dashboard/service/mapreduce.hbs?rev=1406442&r1=1406441&r2=1406442&view=diff
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/dashboard/service/mapreduce.hbs (original)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/dashboard/service/mapreduce.hbs Wed Nov 7 04:00:21 2012
@@ -85,16 +85,18 @@
{{view view.Chart}}
<div class="chartLabel">{{t dashboard.services.mapreduce.chart.label}}</div>
{{#if view.service.quickLinks.length}}
+ {{#view App.QuickViewLinks contentBinding="view.service"}}
<div class="btn-group">
<a class="btn btn-mini dropdown-toggle" data-toggle="dropdown" href="#">
Quick Links
<span class="caret"></span>
</a>
<ul class="dropdown-menu">
- {{#each view.service.quickLinks}}
- <li><a href="javascript:void(null)">{{label}}</a></li>
+ {{#each view.quickLinks}}
+ <li><a {{bindAttr href="url"}}>{{label}}</a></li>
{{/each}}
</ul>
</div>
+ {{/view}}
{{/if}}
</div>
\ No newline at end of file
Modified: incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/host.hbs
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/host.hbs?rev=1406442&r1=1406441&r2=1406442&view=diff
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/host.hbs (original)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/host.hbs Wed Nov 7 04:00:21 2012
@@ -85,7 +85,6 @@
{{view Ember.Checkbox checkedBinding="view.allComponentsChecked"}} All
</label>
</li>
-
<li>
<label class="checkbox">
{{view Ember.Checkbox checkedBinding="view.masterComponentsChecked"}} Master Components:
@@ -94,7 +93,7 @@
{{#each component in masterComponents}}
<li>
<label class="checkbox">
- {{view view.ComponentCheckboxView contentBinding="component"}} {{unbound component.componentName}}
+ {{view Ember.Checkbox checkedBinding="component.checkedForHostFilter" }} {{unbound component.componentName}}
</label>
</li>
{{/each}}
@@ -109,17 +108,22 @@
{{#each component in slaveComponents}}
<li>
<label class="checkbox">
- {{view view.ComponentCheckboxView contentBinding="component" }} {{unbound component.componentName}}
+ {{view Ember.Checkbox checkedBinding="component.checkedForHostFilter" }} {{unbound component.componentName}}
</label>
</li>
{{/each}}
</ul>
</li>
+ <li class="align-right">
+ <button class="btn" {{action "closeFilters" target="view"}}>
+ Cancel
+ </button>
+ <button class="btn btn-primary" {{action "applyFilters" target="view"}}>
+ Apply
+ </button>
+ </li>
</ul>
- <button {{bindAttr disabled="view.isApplyDisabled"}} class="btn" {{action "applyFilters" target="view"}}>
- Apply
- </button>
</div>
</th>
</tr>
@@ -134,7 +138,7 @@
</label>
</td>
<td class="name">
- <span class="health-status-{{unbound host.healthStatus}}"></span>
+ <span {{bindAttr class="host.healthClass"}}></span>
<a href="#" {{action "showDetails" host}}>{{unbound host.hostName}}</a>
</td>
<td>{{host.cluster.clusterName}}</td>
Modified: incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/host/details.hbs
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/host/details.hbs?rev=1406442&r1=1406441&r2=1406442&view=diff
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/host/details.hbs (original)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/host/details.hbs Wed Nov 7 04:00:21 2012
@@ -16,9 +16,9 @@
* limitations under the License.
-->
<div id="host-details">
- <i class="icon-home"></i> /
+ <a href='#' {{action "routeHome" target="controller"}}><i class="icon-home"></i></a> /
<a href="javascript:void(null)" data-toggle="modal" {{action backToHostsList}}>Hosts</a> /
- <span class="host-title health-status-{{unbound view.content.healthStatus}}">{{unbound view.content.hostName}}</span>
+ <span {{bindAttr class=":host-title view.content.healthClass"}}>{{unbound view.content.hostName}}</span>
<div class="host-maintenance">
<div class="btn-group display-inline-block">
<a class="btn dropdown-toggle" data-toggle="dropdown" href="#">
Modified: incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/host/summary.hbs
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/host/summary.hbs?rev=1406442&r1=1406441&r2=1406442&view=diff
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/host/summary.hbs (original)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/host/summary.hbs Wed Nov 7 04:00:21 2012
@@ -32,7 +32,8 @@
{{#each component in view.content.components}}
{{#view view.ComponentButtonView contentBinding="component"}}
<div {{bindAttr class=":btn-group view.positionButton:pull-right:pull-left"}}>
- <button {{bindAttr class="view.buttonClass"}} data-toggle="dropdown">
+ <button {{bindAttr id="view.buttonId"}} class="component-operation-button btn btn-success dropdown-toggle" data-toggle="dropdown">
+ <span {{bindAttr class="view.indicatorClass"}}></span>
{{unbound view.content.componentName}}
<span class="caret"></span>
</button>
@@ -49,12 +50,12 @@
</a>
</li>
{{/if}}
- <li {{bindAttr class="view.content.workStatus::hidden"}}>
+ <li {{bindAttr class="view.componentCheckStatus::hidden"}}>
<a href="javascript:void(null)" data-toggle="modal" {{action "stopComponent" view.content target="controller"}}>
Stop
</a>
</li>
- <li {{bindAttr class="view.content.workStatus:hidden:"}}>
+ <li {{bindAttr class="view.componentCheckStatus:hidden:"}}>
<a href="javascript:void(null)" data-toggle="modal" {{action "startComponent" view.content target="controller"}}>
Start
</a>
Modified: incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/service.hbs
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/service.hbs?rev=1406442&r1=1406441&r2=1406442&view=diff
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/service.hbs (original)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/service.hbs Wed Nov 7 04:00:21 2012
@@ -20,7 +20,7 @@
<div id="services-menu" class="well span2" style="padding: 8px 0">
{{view App.MainServiceMenuView}}
<div class="add-service-button">
- <a class="btn" href="javascript:void(null)">
+ <a class="btn" {{action addService href="true"}}>
<i class="icon-plus"></i>
Add Service
</a>
Added: incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/service/add.hbs
URL: http://svn.apache.org/viewvc/incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/service/add.hbs?rev=1406442&view=auto
==============================================================================
--- incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/service/add.hbs (added)
+++ incubator/ambari/branches/AMBARI-666/ambari-web/app/templates/main/service/add.hbs Wed Nov 7 04:00:21 2012
@@ -0,0 +1,47 @@
+<!--
+* 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.
+-->
+
+<div id="add-service">
+ <div class="container">
+ <div class="container-fluid">
+
+ <a class="btn back" {{action backToServices}}>â Back to Services</a>
+
+ <div class="row-fluid">
+ <div class="span3">
+ <!--Sidebar content-->
+ <div class="well">
+ <ul class="nav nav-pills nav-stacked">
+ <li class="nav-header">{{t services.add.header}}</li>
+ <li {{bindAttr class="isStep1:active view.isStep1Disabled:disabled"}}><a href="javascript:void(null);" {{action gotoStep1 target="controller"}}>{{t installer.step4.header}}</a></li>
+ <li {{bindAttr class="isStep2:active view.isStep2Disabled:disabled"}}><a href="javascript:void(null);" {{action gotoStep2 target="controller"}}>{{t installer.step5.header}}</a></li>
+ <li {{bindAttr class="isStep3:active view.isStep3Disabled:disabled"}}><a href="javascript:void(null);" {{action gotoStep3 target="controller"}}>{{t installer.step6.header}}</a></li>
+ <li {{bindAttr class="isStep4:active view.isStep4Disabled:disabled"}}><a href="javascript:void(null);" {{action gotoStep4 target="controller"}}>{{t installer.step7.header}}</a></li>
+ <li {{bindAttr class="isStep5:active view.isStep5Disabled:disabled"}}><a href="javascript:void(null);" {{action gotoStep5 target="controller"}}>{{t installer.step8.header}}</a></li>
+ <li {{bindAttr class="isStep6:active view.isStep6Disabled:disabled"}}><a href="javascript:void(null);" {{action gotoStep6 target="controller"}}>{{t installer.step9.header}}</a></li>
+ <li {{bindAttr class="isStep7:active view.isStep7Disabled:disabled"}}><a href="javascript:void(null);" {{action gotoStep7 target="controller"}}>{{t installer.step10.header}}</a></li>
+ </ul>
+ </div>
+ </div>
+ <div id="add-service-content" class="well span9">
+ {{outlet}}
+ </div>
+ </div>
+ </div>
+ </div>
+</div>