You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficcontrol.apache.org by mi...@apache.org on 2016/11/07 22:23:27 UTC

[06/26] incubator-trafficcontrol git commit: merge master

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/app/src/modules/public/login/index.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/modules/public/login/index.js b/traffic_ops/experimental/ui/app/src/modules/public/login/index.js
index 3e8fa2c..ab8aa0f 100644
--- a/traffic_ops/experimental/ui/app/src/modules/public/login/index.js
+++ b/traffic_ops/experimental/ui/app/src/modules/public/login/index.js
@@ -1,3 +1,22 @@
+/*
+ * 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 = angular.module('trafficOps.public.login', [])
     .controller('LoginController', require('./LoginController'))
     .config(function($stateProvider, $urlRouterProvider) {
@@ -13,4 +32,4 @@ module.exports = angular.module('trafficOps.public.login', [])
             })
         ;
         $urlRouterProvider.otherwise('/');
-    });
\ No newline at end of file
+    });

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/app/src/modules/public/login/login.tpl.html
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/modules/public/login/login.tpl.html b/traffic_ops/experimental/ui/app/src/modules/public/login/login.tpl.html
index 5b1efa5..7dfa69c 100644
--- a/traffic_ops/experimental/ui/app/src/modules/public/login/login.tpl.html
+++ b/traffic_ops/experimental/ui/app/src/modules/public/login/login.tpl.html
@@ -1,3 +1,22 @@
+<!--
+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.
+-->
+
 <section id="loginContainer">
     <div class="panelForm">
         <h4>Login</h4>

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/app/src/modules/public/public.tpl.html
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/modules/public/public.tpl.html b/traffic_ops/experimental/ui/app/src/modules/public/public.tpl.html
index 25583de..254b9e4 100644
--- a/traffic_ops/experimental/ui/app/src/modules/public/public.tpl.html
+++ b/traffic_ops/experimental/ui/app/src/modules/public/public.tpl.html
@@ -1,3 +1,22 @@
+<!--
+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="publicContainer">
     <div ui-view="publicContent"></div>
 </div>

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/app/src/package.json
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/package.json b/traffic_ops/experimental/ui/app/src/package.json
index 7acf5ca..9527500 100644
--- a/traffic_ops/experimental/ui/app/src/package.json
+++ b/traffic_ops/experimental/ui/app/src/package.json
@@ -8,6 +8,7 @@
     },
     "dependencies": {
         "forever": "0.15.1",
+        "morgan": "1.7.0",
         "errorhandler": "1.4.3",
         "connect-modrewrite": "0.8.5",
         "connect-timeout": "1.7.0",

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/app/src/scripts/config.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/scripts/config.js b/traffic_ops/experimental/ui/app/src/scripts/config.js
index 13cc002..46606c9 100644
--- a/traffic_ops/experimental/ui/app/src/scripts/config.js
+++ b/traffic_ops/experimental/ui/app/src/scripts/config.js
@@ -1,7 +1,26 @@
+/*
+ * 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.
+ */
+
 "use strict";
 
  angular.module('config', [])
 
 .constant('ENV', {api:{root:'/api/1.2/'}})
 
-;
\ No newline at end of file
+;

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/app/src/scripts/shared-libs.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/scripts/shared-libs.js b/traffic_ops/experimental/ui/app/src/scripts/shared-libs.js
old mode 100755
new mode 100644
index a892045..87e28cb
--- a/traffic_ops/experimental/ui/app/src/scripts/shared-libs.js
+++ b/traffic_ops/experimental/ui/app/src/scripts/shared-libs.js
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 /**
  * Define the required js libraries needed for this application. The compiler will merge them all into a single download. Order is important!
  */

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/app/src/styles/main.scss
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/styles/main.scss b/traffic_ops/experimental/ui/app/src/styles/main.scss
index c2adf60..5ad33ec 100755
--- a/traffic_ops/experimental/ui/app/src/styles/main.scss
+++ b/traffic_ops/experimental/ui/app/src/styles/main.scss
@@ -1,3 +1,5 @@
+@charset "utf-8";
+
 $fa-font-path: "../assets/fonts";
 
 @import url(//fonts.googleapis.com/css?family=Lato:300,400,700,900,400italic);

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/app/src/trafficOps_release.json
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/trafficOps_release.json b/traffic_ops/experimental/ui/app/src/trafficOps_release.json
deleted file mode 100644
index 78fc5f3..0000000
--- a/traffic_ops/experimental/ui/app/src/trafficOps_release.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-    "Version":"0.1",
-    "Build Number":"1",
-    "Build Date":"2016-01-01 16:25:27"
-}

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/app/src/traffic_ops_release.json
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/traffic_ops_release.json b/traffic_ops/experimental/ui/app/src/traffic_ops_release.json
new file mode 100644
index 0000000..78fc5f3
--- /dev/null
+++ b/traffic_ops/experimental/ui/app/src/traffic_ops_release.json
@@ -0,0 +1,5 @@
+{
+    "Version":"0.1",
+    "Build Number":"1",
+    "Build Date":"2016-01-01 16:25:27"
+}

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/build/Dockerfile
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/build/Dockerfile b/traffic_ops/experimental/ui/build/Dockerfile
new file mode 100644
index 0000000..ccaebc7
--- /dev/null
+++ b/traffic_ops/experimental/ui/build/Dockerfile
@@ -0,0 +1,56 @@
+# 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.
+
+FROM centos:7
+MAINTAINER Dan Kirkwood
+
+RUN	yum -y install \
+		epel-release \
+		git \
+		rpm-build && \
+	yum -y clean all
+
+ENV GITREPO https://github.com/apache/incubator-trafficcontrol.git
+ENV BRANCH master
+
+WORKDIR /repo
+
+# traffic_ops_v2 specific
+RUN	yum -y install \
+		gcc \
+		libffi-devel \
+		make \
+		nodejs \
+		npm \
+		ruby-devel \
+		rubygems
+
+RUN	gem install compass
+RUN	npm -g install bower grunt-cli
+
+# bower will not run as root by default
+RUN	echo '{ "allow_root": true }' > /root/.bowerrc
+
+###
+
+VOLUME ./artifacts:/artifacts
+
+ADD run-build.sh .
+
+CMD ./run-build.sh traffic_ops_v2 2>&1 | tee /artifacts/build-traffic_ops_v2.log
+
+# vi:syntax=Dockerfile

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/build/README.md
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/build/README.md b/traffic_ops/experimental/ui/build/README.md
new file mode 100644
index 0000000..7492cd4
--- /dev/null
+++ b/traffic_ops/experimental/ui/build/README.md
@@ -0,0 +1,63 @@
+# Traffic Ops v2 Installation
+
+### 1. Build w/ Docker
+
+* Download Traffic Control repo
+
+    ```
+    $ git clone https://github.com/apache/incubator-trafficcontrol.git
+    ```
+
+* Build the RPM
+
+    ```
+    $ cd incubator-trafficcontrol/traffic_ops/experimental/ui/build
+    $ sudo docker build -t tov2-image .
+    $ sudo docker run -v $(pwd)/artifacts:/artifacts -e GITREPO=https://github.com/apache/incubator-trafficcontrol.git -e BRANCH=master tov2-image
+    ```
+
+    The rpm will be created the `artifacts` directory.
+
+### 2. Install
+
+* Install the Node.js JavaScript runtime
+
+    ```
+    $ curl --silent --location https://rpm.nodesource.com/setup_6.x | sudo bash -
+    $ sudo yum install -y nodejs
+    ```
+
+* Install the Traffic Ops v2 RPM
+
+    ```
+    $ sudo yum install -y ./artifacts/traffic_ops_v2-[version]-[commits].[sha].x86_64.rpm
+    ```
+
+### 3. Configure
+
+* Configure Traffic Ops v2
+
+    ```
+    $ cd /etc/traffic_ops_v2/conf
+    $ sudo cp config-template.js config.js
+    $ sudo vi config.js (read the inline comments)
+    ```
+
+### 4. Run
+
+* Start Traffic Ops v2
+
+    ```
+    $ sudo service traffic_ops_v2 start
+    ```
+
+* Navigate to Traffic Ops v2
+
+    ```
+    $ http://localhost[:port]
+    ```
+
+#### Notes
+
+    - Traffic Ops v2 consumes the Traffic Ops API, therefore, an instance of Traffic Ops must be running.
+    - This is known to work with CentOS 6.7 and Centos 7 as the host environment.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/build/build_rpm.sh
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/build/build_rpm.sh b/traffic_ops/experimental/ui/build/build_rpm.sh
new file mode 100755
index 0000000..60a8d35
--- /dev/null
+++ b/traffic_ops/experimental/ui/build/build_rpm.sh
@@ -0,0 +1,57 @@
+#!/bin/bash
+#
+#
+#
+# Licensed 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.
+
+function importFunctions() {
+	local script=$(readlink -f "$0")
+	local suff=${script##*control/}
+	local tcdirlen=$[${#script} - ${#suff}]
+	export TC_DIR=${script:0:$tcdirlen}
+	local scriptdir=$(dirname "$script")
+	export TS_DIR=$(dirname "$scriptdir")
+
+	functions_sh="$TC_DIR/build/functions.sh"
+	if [[ ! -r $functions_sh ]]; then
+		echo "error: can't find $functions_sh"
+		exit 1
+	fi
+	. "$functions_sh"
+}
+
+#----------------------------------------
+function initBuildArea() {
+	echo "Initializing the build area."
+	mkdir -p "$RPMBUILD"/{SPECS,SOURCES,RPMS,SRPMS,BUILD,BUILDROOT} || { echo "Could not create $RPMBUILD: $?"; exit 1; }
+
+	# tar/gzip the source
+	local ts_dest=$(createSourceDir traffic_ops_v2)
+	cd "$TS_DIR" || \
+		 { echo "Could not cd to $TS_DIR: $?"; exit 1; }
+	rsync -av ./ "$ts_dest"/ || \
+		 { echo "Could not copy to $to_dest: $?"; exit 1; }
+	cp -r "$TS_DIR"/ "$ts_dest" || { echo "Could not copy $TS_DIR to $ts_dest: $?"; exit 1; }
+
+	tar -czvf "$ts_dest".tgz -C "$RPMBUILD"/SOURCES $(basename $ts_dest) || { echo "Could not create tar archive $ts_dest.tgz: $?"; exit 1; }
+	cp "$TS_DIR"/build/*.spec "$RPMBUILD"/SPECS/. || { echo "Could not copy spec files: $?"; exit 1; }
+
+	echo "The build area has been initialized."
+}
+
+# ---------------------------------------
+
+importFunctions
+checkEnvironment npm node
+initBuildArea
+buildRpm traffic_ops_v2

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/build/etc/init.d/traffic_ops_v2
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/build/etc/init.d/traffic_ops_v2 b/traffic_ops/experimental/ui/build/etc/init.d/traffic_ops_v2
new file mode 100755
index 0000000..de0ded5
--- /dev/null
+++ b/traffic_ops/experimental/ui/build/etc/init.d/traffic_ops_v2
@@ -0,0 +1,135 @@
+#!/bin/bash
+#
+# An init.d script for running a Node.js process as a service using Forever as
+# the process monitor. For more configuration options associated with Forever,
+# see: https://github.com/nodejitsu/forever
+#
+# This was written for Debian distributions such as Ubuntu, but should still
+# work on RedHat, Fedora, or other RPM-based distributions, since none of the
+# built-in service functions are used. So information is provided for both.
+#
+### BEGIN INIT INFO
+# Provides:             my-application
+# Required-Start:       $syslog $remote_fs
+# Required-Stop:        $syslog $remote_fs
+# Should-Start:         $local_fs
+# Should-Stop:          $local_fs
+# Default-Start:        2 3 4 5
+# Default-Stop:         0 1 6
+# Short-Description:    My Application
+# Description:          My Application
+### END INIT INFO
+#
+### BEGIN CHKCONFIG INFO
+# chkconfig: 2345 55 25
+# description: My Application
+### END CHKCONFIG INFO
+#
+# An application name to display in echo text.
+# NAME="Traffic Ops v2 Application"
+# The full path to the directory containing the node and forever binaries.
+# Set the NODE_PATH to the Node.js main node_modules directory.
+# The application startup Javascript file path.
+
+# Process ID file path.
+# Log file path.
+# Forever settings to prevent the application spinning if it fails on launch.
+# MIN_UPTIME="5000"
+# SPIN_SLEEP_TIME="2000"
+ 
+NAME="Traffic Ops v2 Application"
+NODE_BIN_DIR="/usr/bin"
+NODE_PATH="/opt/traffic_ops_v2/node_modules"
+FOREVER_BIN_DIR="/opt/traffic_ops_v2/node_modules/forever/bin"
+APPLICATION_PATH="/opt/traffic_ops_v2/server/server.js"
+PIDFILE="/var/run/traffic_ops_v2.pid"
+LOGFILE="/var/log/traffic_ops_v2/traffic_ops_v2.log"
+MIN_UPTIME="5000"
+SPIN_SLEEP_TIME="2000"
+ 
+# Add node to the path for situations in which the environment is passed.
+PATH=$FOREVER_BIN_DIR:$NODE_BIN_DIR:$PATH
+# Export all environment variables that must be visible for the Node.js
+# application process forked by Forever. It will not see any of the other
+# variables defined in this script.
+export NODE_PATH=$NODE_PATH
+ 
+start() {
+    echo "Starting $NAME"
+    # We're calling forever directly without using start-stop-daemon for the
+    # sake of simplicity when it comes to environment, and because this way
+    # the script will work whether it is executed directly or via the service
+    # utility.
+    #
+    # The minUptime and spinSleepTime settings stop Forever from thrashing if
+    # the application fails immediately on launch. This is generally necessary to
+    # avoid loading development servers to the point of failure every time
+    # someone makes an error in application initialization code, or bringing down
+    # production servers the same way if a database or other critical service
+    # suddenly becomes inaccessible.
+    #
+    # The pidfile contains the child process pid, not the forever process pid.
+    # We're only using it as a marker for whether or not the process is
+    # running.
+    #
+    # Note that redirecting the output to /dev/null (or anywhere) is necessary
+    # to make this script work if provisioning the service via Chef.
+    forever \
+      --pidFile $PIDFILE \
+      -a \
+      -l $LOGFILE \
+      --minUptime $MIN_UPTIME \
+      --spinSleepTime $SPIN_SLEEP_TIME \
+      start $APPLICATION_PATH 2>&1 > /dev/null &
+    RETVAL=$?
+}
+ 
+stop() {
+    if [ -f $PIDFILE ]; then
+        echo "Shutting down $NAME"
+        # Tell Forever to stop the process.
+        forever stop $APPLICATION_PATH 2>&1 > /dev/null
+        # Get rid of the pidfile, since Forever won't do that.
+        rm -f $PIDFILE
+        RETVAL=$?
+    else
+        echo "$NAME is not running."
+        RETVAL=0
+    fi
+}
+ 
+restart() {
+    stop
+    start
+}
+ 
+status() {
+    echo `forever list` | grep -q "$APPLICATION_PATH"
+    if [ "$?" -eq "0" ]; then
+        echo "$NAME is running."
+        RETVAL=0
+    else
+        echo "$NAME is not running."
+        RETVAL=3
+    fi
+}
+ 
+case "$1" in
+    start)
+        start
+        ;;
+    stop)
+        stop
+        ;;
+    status)
+        status
+        ;;
+    restart)
+        restart
+        ;;
+    *)
+        echo "Usage: {start|stop|status|restart}"
+        exit 1
+        ;;
+esac
+exit $RETVAL

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/build/etc/logrotate.d/traffic_ops_v2
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/build/etc/logrotate.d/traffic_ops_v2 b/traffic_ops/experimental/ui/build/etc/logrotate.d/traffic_ops_v2
new file mode 100644
index 0000000..229b500
--- /dev/null
+++ b/traffic_ops/experimental/ui/build/etc/logrotate.d/traffic_ops_v2
@@ -0,0 +1,8 @@
+/var/log/traffic_ops_v2/traffic_ops_v2.log {
+    daily
+    copytruncate
+    missingok
+    compress
+    maxage 30
+    dateext
+}

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/build/etc/logrotate.d/traffic_ops_v2-access
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/build/etc/logrotate.d/traffic_ops_v2-access b/traffic_ops/experimental/ui/build/etc/logrotate.d/traffic_ops_v2-access
new file mode 100644
index 0000000..89eb341
--- /dev/null
+++ b/traffic_ops/experimental/ui/build/etc/logrotate.d/traffic_ops_v2-access
@@ -0,0 +1,8 @@
+/var/log/traffic_ops_v2/access.log {
+    daily
+    copytruncate
+    missingok
+    compress
+    maxage 30
+    dateext
+}

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/build/run-build.sh
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/build/run-build.sh b/traffic_ops/experimental/ui/build/run-build.sh
new file mode 100755
index 0000000..f0467a6
--- /dev/null
+++ b/traffic_ops/experimental/ui/build/run-build.sh
@@ -0,0 +1,37 @@
+#!/usr/bin/env bash
+# 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.
+
+target=$1
+[[ -z $target ]] && echo "No target specified"
+echo "Building $target"
+
+echo "GITREPO=${GITREPO:=https://github.com/apache/incubator-trafficcontrol}"
+echo "BRANCH=${BRANCH:=master}"
+
+set -x
+git clone $GITREPO -b $BRANCH traffic_control
+distdir=$(pwd)/traffic_control/dist
+
+cd traffic_control/traffic_ops/experimental/ui
+./build/build_rpm.sh
+mkdir -p /artifacts
+cp $distdir/* /artifacts/.
+
+# Clean up for next build
+cd -
+rm -r traffic_control

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/build/traffic_ops_v2.spec
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/build/traffic_ops_v2.spec b/traffic_ops/experimental/ui/build/traffic_ops_v2.spec
new file mode 100644
index 0000000..651d6c9
--- /dev/null
+++ b/traffic_ops/experimental/ui/build/traffic_ops_v2.spec
@@ -0,0 +1,89 @@
+#
+#
+# Licensed 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.
+#
+#
+# RPM spec file for the Traffic Ops v2
+#
+%define		debug_package %{nil}
+Name:		traffic_ops_v2
+Version:	%{traffic_control_version}
+Release:	%{build_number}
+Summary:	Traffic Ops v2
+Group:		Applications/Communications
+License:	Apache License, Version 2.0
+URL:		https://github.com/Comcast/traffic_control/
+Source:		%{_sourcedir}/traffic_ops_v2-%{traffic_control_version}.tgz
+AutoReqProv: no
+Requires: nodejs
+
+%define traffic_ops_v2_home /opt/traffic_ops_v2
+%description
+Installs Traffic Ops v2
+
+Built: @BUILT@
+
+%prep
+rm -rf $RPM_BUILD_DIR/traffic_ops_v2-%{version}
+tar -xzvf $RPM_SOURCE_DIR/traffic_ops_v2-%{version}.tgz
+
+%setup
+
+%build
+    /usr/bin/npm install
+    /usr/bin/bower install
+    /usr/bin/grunt dist
+
+%install
+    %__mkdir -p ${RPM_BUILD_ROOT}/etc/init.d
+    %__mkdir -p ${RPM_BUILD_ROOT}/etc/logrotate.d
+    %__mkdir -p ${RPM_BUILD_ROOT}/etc/traffic_ops_v2
+    %__mkdir -p ${RPM_BUILD_ROOT}%{traffic_ops_v2_home}/public
+    %__mkdir -p ${RPM_BUILD_ROOT}%{traffic_ops_v2_home}/server
+    %__mkdir -p ${RPM_BUILD_ROOT}/var/log/traffic_ops_v2
+
+    # creates dynamic json file needed at runtime for traffic ops v2 to display release info
+    BUILD_DATE=$(date +'%Y-%m-%d %H:%M:%S')
+    VERSION="\"Version\":\"$VERSION\""
+    BUILD_NUMBER="\"Build Number\":\"$BUILD_NUMBER\""
+    BUILD_DATE="\"Build Date\":\"$BUILD_DATE\""
+    JSON_VERSION="{\n$VERSION,\n$BUILD_NUMBER,\n$BUILD_DATE\n}"
+    echo -e $JSON_VERSION > ${RPM_BUILD_ROOT}%{traffic_ops_v2_home}/public/traffic_ops_release.json
+
+    %__cp ${RPM_BUILD_DIR}/traffic_ops_v2-%{version}/server/server.js ${RPM_BUILD_ROOT}%{traffic_ops_v2_home}/server/.
+    %__cp -r ${RPM_BUILD_DIR}/traffic_ops_v2-%{version}/conf ${RPM_BUILD_ROOT}/etc/traffic_ops_v2/.
+    %__cp ${RPM_BUILD_DIR}/traffic_ops_v2-%{version}/build/etc/init.d/traffic_ops_v2 ${RPM_BUILD_ROOT}/etc/init.d/.
+    %__cp ${RPM_BUILD_DIR}/traffic_ops_v2-%{version}/build/etc/logrotate.d/traffic_ops_v2 ${RPM_BUILD_ROOT}/etc/logrotate.d/.
+    %__cp ${RPM_BUILD_DIR}/traffic_ops_v2-%{version}/build/etc/logrotate.d/traffic_ops_v2-access ${RPM_BUILD_ROOT}/etc/logrotate.d/.
+    %__cp -r ${RPM_BUILD_DIR}/traffic_ops_v2-%{version}/app/dist/* ${RPM_BUILD_ROOT}%{traffic_ops_v2_home}/.
+
+%post
+    echo "Successfully installed the traffic_ops_v2 assets to " %{traffic_ops_v2_home}
+    %__chmod +x %{traffic_ops_v2_home}/node_modules/forever/bin/forever
+    %__chmod +x /etc/init.d/traffic_ops_v2
+    echo "Successfully installed the 'traffic_ops_v2' service"
+    /sbin/chkconfig traffic_ops_v2 on
+    echo ""
+    echo "Start with 'service traffic_ops_v2 start'"
+
+%files
+%defattr(644,root,root,755)
+%attr(755,root,root) /etc/init.d/traffic_ops_v2
+%attr(755,root,root) %{traffic_ops_v2_home}/node_modules/forever/bin/*
+%config(noreplace)/etc/traffic_ops_v2/conf/config.js
+%dir /var/log/traffic_ops_v2
+/etc/traffic_ops_v2/conf/config-template.js
+%{traffic_ops_v2_home}/*
+/etc/logrotate.d/traffic_ops_v2
+/etc/logrotate.d/traffic_ops_v2-access
+/etc/init.d/traffic_ops_v2

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/conf/config-template.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/conf/config-template.js b/traffic_ops/experimental/ui/conf/config-template.js
new file mode 100644
index 0000000..1a401cc
--- /dev/null
+++ b/traffic_ops/experimental/ui/conf/config-template.js
@@ -0,0 +1,49 @@
+/*
+
+
+ Licensed 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.
+
+ */
+
+// this is the config for /opt/traffic_ops/server/server.js and is consumed when 'sudo service traffic_ops_v2 start'
+module.exports = {
+	timeout: '120s',
+	useSSL: false, // set to true if you plan to use https (self-signed or trusted certs).
+	port: 8080,
+	sslPort: 8443,
+	proxyPort: 8009,
+	// if useSSL is true, generate ssl certs and provide the proper locations.
+	ssl: {
+		key:    '/path/to/ssl.key',
+		cert:   '/path/to/ssl.crt',
+		ca:     [
+			'/path/to/ssl-bundle.crt'
+		]
+	},
+	// set api 'base_url' to the traffic ops url (all api calls made from the traffic ops ui will be proxied to the api base_url)
+	// enter value for api 'key' if you want to append ?API_KEY=value to all api calls. It is suggested to leave blank.
+	api: {
+		base_url: 'http(s)://where-traffic-ops-is.com',
+		key: ''
+	},
+	// default files location (this is where the traffic ops html, css and javascript was installed)
+	files: {
+		static: '/opt/traffic_ops_v2/public'
+	},
+	// default log location (this is where traffic_ops logs are written)
+	log: {
+		stream: '/var/log/traffic_ops_v2/access.log'
+	},
+	reject_unauthorized: 0 // 0 if using self-signed certs, 1 if trusted certs
+};
+

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/conf/config.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/conf/config.js b/traffic_ops/experimental/ui/conf/config.js
index ed56bfd..0db192b 100644
--- a/traffic_ops/experimental/ui/conf/config.js
+++ b/traffic_ops/experimental/ui/conf/config.js
@@ -1,3 +1,22 @@
+/*
+ * 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 = {
     timeout: '120s',
     useSSL: false, // set to true if using ssl

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/grunt/browserify2.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/grunt/browserify2.js b/traffic_ops/experimental/ui/grunt/browserify2.js
old mode 100755
new mode 100644
index 4be0743..9bb4376
--- a/traffic_ops/experimental/ui/grunt/browserify2.js
+++ b/traffic_ops/experimental/ui/grunt/browserify2.js
@@ -1,3 +1,22 @@
+/*
+ * 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 = {
     'shared-libs-prod': {
         entry: './<%= globalConfig.srcdir %>/scripts/shared-libs.js',

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/grunt/clean.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/grunt/clean.js b/traffic_ops/experimental/ui/grunt/clean.js
old mode 100755
new mode 100644
index a46048c..cb999b8
--- a/traffic_ops/experimental/ui/grunt/clean.js
+++ b/traffic_ops/experimental/ui/grunt/clean.js
@@ -1,3 +1,22 @@
+/*
+ * 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 = {
     all: [
@@ -7,4 +26,4 @@ module.exports = {
     options: {
         force: true
     }
-};
\ No newline at end of file
+};

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/grunt/compass.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/grunt/compass.js b/traffic_ops/experimental/ui/grunt/compass.js
old mode 100755
new mode 100644
index a2c6791..2aed889
--- a/traffic_ops/experimental/ui/grunt/compass.js
+++ b/traffic_ops/experimental/ui/grunt/compass.js
@@ -1,3 +1,22 @@
+/*
+ * 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 = {
     options: {
@@ -25,4 +44,4 @@ module.exports = {
             environment: 'development'
         }
     }
-};
\ No newline at end of file
+};

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/grunt/copy.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/grunt/copy.js b/traffic_ops/experimental/ui/grunt/copy.js
old mode 100755
new mode 100644
index c8cd42b..34a0f66
--- a/traffic_ops/experimental/ui/grunt/copy.js
+++ b/traffic_ops/experimental/ui/grunt/copy.js
@@ -1,3 +1,22 @@
+/*
+ * 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 = {
     dev: {
         files: [

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/grunt/express.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/grunt/express.js b/traffic_ops/experimental/ui/grunt/express.js
index 9684b14..b6be794 100644
--- a/traffic_ops/experimental/ui/grunt/express.js
+++ b/traffic_ops/experimental/ui/grunt/express.js
@@ -1,3 +1,22 @@
+/*
+ * 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 = {
     dev: {
         options: {

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/grunt/globalConfig.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/grunt/globalConfig.js b/traffic_ops/experimental/ui/grunt/globalConfig.js
old mode 100755
new mode 100644
index 5dfebc8..71ab1b4
--- a/traffic_ops/experimental/ui/grunt/globalConfig.js
+++ b/traffic_ops/experimental/ui/grunt/globalConfig.js
@@ -1,3 +1,22 @@
+/*
+ * 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 = function() {
     var globalConfig = {
         app: 'app',

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/grunt/html2js.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/grunt/html2js.js b/traffic_ops/experimental/ui/grunt/html2js.js
old mode 100755
new mode 100644
index fb6a01b..8cd52af
--- a/traffic_ops/experimental/ui/grunt/html2js.js
+++ b/traffic_ops/experimental/ui/grunt/html2js.js
@@ -1,3 +1,22 @@
+/*
+ * 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 = {
     options: {
@@ -8,4 +27,4 @@ module.exports = {
         dest: '<%= globalConfig.tmpdir %>/app-templates.js',
         module: 'app.templates'
     }
-};
\ No newline at end of file
+};

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/grunt/install-dependencies.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/grunt/install-dependencies.js b/traffic_ops/experimental/ui/grunt/install-dependencies.js
index 5306892..14e96ac 100644
--- a/traffic_ops/experimental/ui/grunt/install-dependencies.js
+++ b/traffic_ops/experimental/ui/grunt/install-dependencies.js
@@ -1,3 +1,22 @@
+/*
+ * 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 = {
     options: {
         cwd: '<%= globalConfig.distdir %>',

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/grunt/jshint.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/grunt/jshint.js b/traffic_ops/experimental/ui/grunt/jshint.js
old mode 100755
new mode 100644
index 2118c72..f95dfa1
--- a/traffic_ops/experimental/ui/grunt/jshint.js
+++ b/traffic_ops/experimental/ui/grunt/jshint.js
@@ -1,7 +1,26 @@
+/*
+ * 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 = {
     files: ['Gruntfile.js', '<%= globalConfig.srcfiles.js %>'],
     options: {
         jshintrc:true
     }
-};
\ No newline at end of file
+};

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/grunt/ngconstant.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/grunt/ngconstant.js b/traffic_ops/experimental/ui/grunt/ngconstant.js
index b8cf6f6..f8f0023 100644
--- a/traffic_ops/experimental/ui/grunt/ngconstant.js
+++ b/traffic_ops/experimental/ui/grunt/ngconstant.js
@@ -1,3 +1,22 @@
+/*
+ * 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 = {
     options: {
         space: '  ',

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/grunt/uglify.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/grunt/uglify.js b/traffic_ops/experimental/ui/grunt/uglify.js
old mode 100755
new mode 100644
index b8ee5a1..5f124ce
--- a/traffic_ops/experimental/ui/grunt/uglify.js
+++ b/traffic_ops/experimental/ui/grunt/uglify.js
@@ -1,3 +1,22 @@
+/*
+ * 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 = {
     dist: {
         files: {
@@ -6,4 +25,4 @@ module.exports = {
             ]
         }
     }
-};
\ No newline at end of file
+};

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/grunt/watch.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/grunt/watch.js b/traffic_ops/experimental/ui/grunt/watch.js
old mode 100755
new mode 100644
index 359024a..bc72b39
--- a/traffic_ops/experimental/ui/grunt/watch.js
+++ b/traffic_ops/experimental/ui/grunt/watch.js
@@ -1,3 +1,22 @@
+/*
+ * 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 = {
     options: {
@@ -15,4 +34,4 @@ module.exports = {
         files: ['app/**/*.tpl.html', 'app/**/index.html'],
         tasks: ['copy:dist', 'build-dev']
     }
-};
\ No newline at end of file
+};

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/experimental/ui/server/server.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/server/server.js b/traffic_ops/experimental/ui/server/server.js
index 8514cde..c6d3b38 100644
--- a/traffic_ops/experimental/ui/server/server.js
+++ b/traffic_ops/experimental/ui/server/server.js
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 var constants = require('constants'),
     express = require('express'),
     http = require('http'),
@@ -13,7 +32,7 @@ var config;
 
 try {
     // this should exist in prod environment. no need to create this file in dev as it will use the fallback (see catch)
-    config = require('/etc/trafficops/conf/config');
+    config = require('/etc/traffic_ops_v2/conf/config');
 }
 catch(e) {
     // this is used for dev environment
@@ -93,6 +112,6 @@ if (useSSL) {
     sslOptions.agent = new https.Agent(sslOptions);
 }
 
-console.log("Traffic Portal Port         : %s", config.port);
-console.log("Traffic Portal Proxy Port   : %s", config.proxyPort);
-console.log("Traffic Portal SSL Port     : %s", config.sslPort);
+console.log("Traffic Ops Port         : %s", config.port);
+console.log("Traffic Ops Proxy Port   : %s", config.proxyPort);
+console.log("Traffic Ops SSL Port     : %s", config.sslPort);

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/goto/README.md
----------------------------------------------------------------------
diff --git a/traffic_ops/goto/README.md b/traffic_ops/goto/README.md
index d8ce7ad..523650c 100644
--- a/traffic_ops/goto/README.md
+++ b/traffic_ops/goto/README.md
@@ -3,7 +3,7 @@
 
 GoTO is a server/some other stuff written in Go that allows for RESTful interaction with SQL databases through an Angular web API.
 
-This is written for the Comcast [Traffic Ops](http://traffic-control-cdn.net/docs/latest/development/traffic_ops.html) database, but I'm pretty sure it should probably work for all databases.
+This is written for the Comcast [Traffic Ops](http://trafficcontrol.apache.org/docs/latest/development/traffic_ops.html) database, but I'm pretty sure it should probably work for all databases.
 
 ## Install
 

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/goto/api.go
----------------------------------------------------------------------
diff --git a/traffic_ops/goto/api.go b/traffic_ops/goto/api.go
index 3567fb9..346dc53 100644
--- a/traffic_ops/goto/api.go
+++ b/traffic_ops/goto/api.go
@@ -1,4 +1,3 @@
-// Copyright 2015 Comcast Cable Communications Management, LLC
 
 // Licensed under the Apache License, Version 2.0 (the "License");
 // you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/goto/index.html
----------------------------------------------------------------------
diff --git a/traffic_ops/goto/index.html b/traffic_ops/goto/index.html
index 833d08e..107e5dd 100644
--- a/traffic_ops/goto/index.html
+++ b/traffic_ops/goto/index.html
@@ -1,3 +1,22 @@
+<!--
+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.
+-->
+
 <!DOCTYPE html>
 <html lang="en-US">
   <head>

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/goto/js/main.js
----------------------------------------------------------------------
diff --git a/traffic_ops/goto/js/main.js b/traffic_ops/goto/js/main.js
index 4fcfe33..d4a1555 100644
--- a/traffic_ops/goto/js/main.js
+++ b/traffic_ops/goto/js/main.js
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 angular.module('app', ['ngReactGrid'])
 
 .controller('InitCtrl', function($scope, $http, $log, ngReactGridCheckbox) {

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/goto/mooseFixture/mooseFixture.go
----------------------------------------------------------------------
diff --git a/traffic_ops/goto/mooseFixture/mooseFixture.go b/traffic_ops/goto/mooseFixture/mooseFixture.go
index 6074d87..6bbd719 100644
--- a/traffic_ops/goto/mooseFixture/mooseFixture.go
+++ b/traffic_ops/goto/mooseFixture/mooseFixture.go
@@ -1,4 +1,3 @@
-// Copyright 2015 Comcast Cable Communications Management, LLC
 
 // Licensed under the Apache License, Version 2.0 (the "License");
 // you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/goto/outputFormatter/outputFormatter.go
----------------------------------------------------------------------
diff --git a/traffic_ops/goto/outputFormatter/outputFormatter.go b/traffic_ops/goto/outputFormatter/outputFormatter.go
index 9b3496f..85eba62 100644
--- a/traffic_ops/goto/outputFormatter/outputFormatter.go
+++ b/traffic_ops/goto/outputFormatter/outputFormatter.go
@@ -1,4 +1,3 @@
-// Copyright 2015 Comcast Cable Communications Management, LLC
 
 // Licensed under the Apache License, Version 2.0 (the "License");
 // you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/goto/sqlParser/sqlMapInit.go
----------------------------------------------------------------------
diff --git a/traffic_ops/goto/sqlParser/sqlMapInit.go b/traffic_ops/goto/sqlParser/sqlMapInit.go
index 90ca5e7..a53baf2 100644
--- a/traffic_ops/goto/sqlParser/sqlMapInit.go
+++ b/traffic_ops/goto/sqlParser/sqlMapInit.go
@@ -1,5 +1,25 @@
 package sqlParser
 
+/*
+ * 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.
+ */
+
+
 import (
 	"fmt"
 	"strings"

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/goto/sqlParser/sqlParser.go
----------------------------------------------------------------------
diff --git a/traffic_ops/goto/sqlParser/sqlParser.go b/traffic_ops/goto/sqlParser/sqlParser.go
index 78308f5..1f16efb 100644
--- a/traffic_ops/goto/sqlParser/sqlParser.go
+++ b/traffic_ops/goto/sqlParser/sqlParser.go
@@ -1,4 +1,3 @@
-// Copyright 2015 Comcast Cable Communications Management, LLC
 
 // Licensed under the Apache License, Version 2.0 (the "License");
 // you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/goto/sqlParser/sqlTypeMap.go
----------------------------------------------------------------------
diff --git a/traffic_ops/goto/sqlParser/sqlTypeMap.go b/traffic_ops/goto/sqlParser/sqlTypeMap.go
index dcbf54e..3493015 100644
--- a/traffic_ops/goto/sqlParser/sqlTypeMap.go
+++ b/traffic_ops/goto/sqlParser/sqlTypeMap.go
@@ -1,4 +1,3 @@
-// Copyright 2015 Comcast Cable Communications Management, LLC
 
 // Licensed under the Apache License, Version 2.0 (the "License");
 // you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/goto/urlParser/urlParser.go
----------------------------------------------------------------------
diff --git a/traffic_ops/goto/urlParser/urlParser.go b/traffic_ops/goto/urlParser/urlParser.go
index f3cc6ea..dc24e3a 100644
--- a/traffic_ops/goto/urlParser/urlParser.go
+++ b/traffic_ops/goto/urlParser/urlParser.go
@@ -1,4 +1,3 @@
-// Copyright 2015 Comcast Cable Communications Management, LLC
 
 // Licensed under the Apache License, Version 2.0 (the "License");
 // you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/install/README
----------------------------------------------------------------------
diff --git a/traffic_ops/install/README b/traffic_ops/install/README
index 842d589..253d46c 100644
--- a/traffic_ops/install/README
+++ b/traffic_ops/install/README
@@ -1,5 +1,4 @@
 #
-# Copyright 2015 Comcast Cable Communications Management, LLC
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/install/bin/build_trafficops_perl_library
----------------------------------------------------------------------
diff --git a/traffic_ops/install/bin/build_trafficops_perl_library b/traffic_ops/install/bin/build_trafficops_perl_library
index b31a3d0..684916d 100755
--- a/traffic_ops/install/bin/build_trafficops_perl_library
+++ b/traffic_ops/install/bin/build_trafficops_perl_library
@@ -1,6 +1,5 @@
 #!/usr/bin/perl
 #
-# Copyright 2015 Comcast Cable Communications Management, LLC
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/install/bin/download_web_deps
----------------------------------------------------------------------
diff --git a/traffic_ops/install/bin/download_web_deps b/traffic_ops/install/bin/download_web_deps
index b21bc8f..8c20eb3 100755
--- a/traffic_ops/install/bin/download_web_deps
+++ b/traffic_ops/install/bin/download_web_deps
@@ -1,7 +1,6 @@
 #!/usr/bin/perl
 
 #
-# Copyright 2015 Comcast Cable Communications Management, LLC
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/install/bin/generateCert
----------------------------------------------------------------------
diff --git a/traffic_ops/install/bin/generateCert b/traffic_ops/install/bin/generateCert
index 6bd2639..f22688a 100755
--- a/traffic_ops/install/bin/generateCert
+++ b/traffic_ops/install/bin/generateCert
@@ -1,7 +1,6 @@
 #!/usr/bin/perl
 
 #
-# Copyright 2015 Comcast Cable Communications Management, LLC
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/install/bin/get_parameters.go
----------------------------------------------------------------------
diff --git a/traffic_ops/install/bin/get_parameters.go b/traffic_ops/install/bin/get_parameters.go
index 7d5f0f3..3e05864 100644
--- a/traffic_ops/install/bin/get_parameters.go
+++ b/traffic_ops/install/bin/get_parameters.go
@@ -1,4 +1,3 @@
-// Copyright 2016 Comcast Cable Communications Management, LLC
 
 // Licensed under the Apache License, Version 2.0 (the "License");
 // you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/install/bin/migratedb
----------------------------------------------------------------------
diff --git a/traffic_ops/install/bin/migratedb b/traffic_ops/install/bin/migratedb
index 2c76329..9a9c192 100755
--- a/traffic_ops/install/bin/migratedb
+++ b/traffic_ops/install/bin/migratedb
@@ -1,7 +1,6 @@
 #!/usr/bin/perl
 
 #
-# Copyright 2015 Comcast Cable Communications Management, LLC
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/install/bin/postinstall
----------------------------------------------------------------------
diff --git a/traffic_ops/install/bin/postinstall b/traffic_ops/install/bin/postinstall
index 5aee102..6a747da 100755
--- a/traffic_ops/install/bin/postinstall
+++ b/traffic_ops/install/bin/postinstall
@@ -1,7 +1,6 @@
 #!/usr/bin/perl
 
 #
-# Copyright 2015 Comcast Cable Communications Management, LLC
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/install/bin/web_deps.txt
----------------------------------------------------------------------
diff --git a/traffic_ops/install/bin/web_deps.txt b/traffic_ops/install/bin/web_deps.txt
index 38a75c4..44f4d49 100644
--- a/traffic_ops/install/bin/web_deps.txt
+++ b/traffic_ops/install/bin/web_deps.txt
@@ -1,5 +1,4 @@
 #
-# Copyright 2015 Comcast Cable Communications Management, LLC
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/install/data/perl/osversions.cfg
----------------------------------------------------------------------
diff --git a/traffic_ops/install/data/perl/osversions.cfg b/traffic_ops/install/data/perl/osversions.cfg
index 36660b1..07636ea 100644
--- a/traffic_ops/install/data/perl/osversions.cfg
+++ b/traffic_ops/install/data/perl/osversions.cfg
@@ -1,5 +1,4 @@
 #
-# Copyright 2015 Comcast Cable Communications Management, LLC
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/install/etc/README
----------------------------------------------------------------------
diff --git a/traffic_ops/install/etc/README b/traffic_ops/install/etc/README
index 842d589..253d46c 100644
--- a/traffic_ops/install/etc/README
+++ b/traffic_ops/install/etc/README
@@ -1,5 +1,4 @@
 #
-# Copyright 2015 Comcast Cable Communications Management, LLC
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/install/go/src/comcast.com/create_db/create_db.go
----------------------------------------------------------------------
diff --git a/traffic_ops/install/go/src/comcast.com/create_db/create_db.go b/traffic_ops/install/go/src/comcast.com/create_db/create_db.go
index 4dad1e7..b239a4d 100644
--- a/traffic_ops/install/go/src/comcast.com/create_db/create_db.go
+++ b/traffic_ops/install/go/src/comcast.com/create_db/create_db.go
@@ -1,5 +1,4 @@
 /*
-     Copyright 2015 Comcast Cable Communications Management, LLC
 
      Licensed under the Apache License, Version 2.0 (the "License");
      you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/install/go/src/comcast.com/csv2json/csv2json.go
----------------------------------------------------------------------
diff --git a/traffic_ops/install/go/src/comcast.com/csv2json/csv2json.go b/traffic_ops/install/go/src/comcast.com/csv2json/csv2json.go
index c716903..7287467 100755
--- a/traffic_ops/install/go/src/comcast.com/csv2json/csv2json.go
+++ b/traffic_ops/install/go/src/comcast.com/csv2json/csv2json.go
@@ -1,5 +1,4 @@
 /*
-     Copyright 2015 Comcast Cable Communications Management, LLC
 
      Licensed under the Apache License, Version 2.0 (the "License");
      you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/install/go/src/comcast.com/dataload/dataload.go
----------------------------------------------------------------------
diff --git a/traffic_ops/install/go/src/comcast.com/dataload/dataload.go b/traffic_ops/install/go/src/comcast.com/dataload/dataload.go
index c94e798..15549b5 100644
--- a/traffic_ops/install/go/src/comcast.com/dataload/dataload.go
+++ b/traffic_ops/install/go/src/comcast.com/dataload/dataload.go
@@ -1,5 +1,4 @@
 /*
-   Copyright 2015 Comcast Cable Communications Management, LLC
 
    Licensed under the Apache License, Version 2.0 (the "License");
    you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/install/go/src/comcast.com/systemtest/systemtest.go
----------------------------------------------------------------------
diff --git a/traffic_ops/install/go/src/comcast.com/systemtest/systemtest.go b/traffic_ops/install/go/src/comcast.com/systemtest/systemtest.go
index d34b172..d3cc480 100644
--- a/traffic_ops/install/go/src/comcast.com/systemtest/systemtest.go
+++ b/traffic_ops/install/go/src/comcast.com/systemtest/systemtest.go
@@ -1,5 +1,4 @@
 /*
-   Copyright 2015 Comcast Cable Communications Management, LLC
 
    Licensed under the Apache License, Version 2.0 (the "License");
    you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/install/lib/InstallUtils.pm
----------------------------------------------------------------------
diff --git a/traffic_ops/install/lib/InstallUtils.pm b/traffic_ops/install/lib/InstallUtils.pm
index adc0566..0574468 100644
--- a/traffic_ops/install/lib/InstallUtils.pm
+++ b/traffic_ops/install/lib/InstallUtils.pm
@@ -5,6 +5,24 @@
 
 package InstallUtils;
 
+# 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.
+
+
 use Term::ReadPassword;
 use base qw{ Exporter };
 our @EXPORT_OK = qw{ execCommand randomWord promptUser promptRequired promptPassword promptPasswordVerify trim};

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_ops/install/lib/WebDep.pm
----------------------------------------------------------------------
diff --git a/traffic_ops/install/lib/WebDep.pm b/traffic_ops/install/lib/WebDep.pm
index 7ad4bf6..e7db9b6 100644
--- a/traffic_ops/install/lib/WebDep.pm
+++ b/traffic_ops/install/lib/WebDep.pm
@@ -1,7 +1,6 @@
 package WebDep;
 
 #
-# Copyright 2015 Comcast Cable Communications Management, LLC
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_portal/Gruntfile.js
----------------------------------------------------------------------
diff --git a/traffic_portal/Gruntfile.js b/traffic_portal/Gruntfile.js
index ad8b138..f86d919 100755
--- a/traffic_portal/Gruntfile.js
+++ b/traffic_portal/Gruntfile.js
@@ -1,6 +1,5 @@
 /*
 
- Copyright 2015 Comcast Cable Communications Management, LLC
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_portal/app/src/AppController.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/AppController.js b/traffic_portal/app/src/AppController.js
index 4bbd426..b9e87d7 100644
--- a/traffic_portal/app/src/AppController.js
+++ b/traffic_portal/app/src/AppController.js
@@ -1,6 +1,5 @@
 /*
 
- Copyright 2015 Comcast Cable Communications Management, LLC
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_portal/app/src/app.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/app.js b/traffic_portal/app/src/app.js
index a7efc67..9d7ac4a 100755
--- a/traffic_portal/app/src/app.js
+++ b/traffic_portal/app/src/app.js
@@ -1,6 +1,5 @@
 /*
 
- Copyright 2015 Comcast Cable Communications Management, LLC
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_portal/app/src/assets/css/custom.css
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/assets/css/custom.css b/traffic_portal/app/src/assets/css/custom.css
index 5ab9f5a..c0c95c3 100644
--- a/traffic_portal/app/src/assets/css/custom.css
+++ b/traffic_portal/app/src/assets/css/custom.css
@@ -1,6 +1,5 @@
 /*
 
- Copyright 2015 Comcast Cable Communications Management, LLC
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_portal/app/src/common/api/AuthService.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/common/api/AuthService.js b/traffic_portal/app/src/common/api/AuthService.js
index 7d95c77..c3fea82 100644
--- a/traffic_portal/app/src/common/api/AuthService.js
+++ b/traffic_portal/app/src/common/api/AuthService.js
@@ -1,6 +1,5 @@
 /*
 
- Copyright 2015 Comcast Cable Communications Management, LLC
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_portal/app/src/common/api/DeliveryServiceService.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/common/api/DeliveryServiceService.js b/traffic_portal/app/src/common/api/DeliveryServiceService.js
index e75e25d..e2f2976 100644
--- a/traffic_portal/app/src/common/api/DeliveryServiceService.js
+++ b/traffic_portal/app/src/common/api/DeliveryServiceService.js
@@ -1,6 +1,5 @@
 /*
 
- Copyright 2015 Comcast Cable Communications Management, LLC
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_portal/app/src/common/api/HealthService.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/common/api/HealthService.js b/traffic_portal/app/src/common/api/HealthService.js
index 16c0b4c..a7948cd 100644
--- a/traffic_portal/app/src/common/api/HealthService.js
+++ b/traffic_portal/app/src/common/api/HealthService.js
@@ -1,6 +1,5 @@
 /*
 
- Copyright 2015 Comcast Cable Communications Management, LLC
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_portal/app/src/common/api/PortalService.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/common/api/PortalService.js b/traffic_portal/app/src/common/api/PortalService.js
index 083a2b0..baadf8e 100644
--- a/traffic_portal/app/src/common/api/PortalService.js
+++ b/traffic_portal/app/src/common/api/PortalService.js
@@ -1,6 +1,5 @@
 /*
 
- Copyright 2015 Comcast Cable Communications Management, LLC
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_portal/app/src/common/api/StatsService.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/common/api/StatsService.js b/traffic_portal/app/src/common/api/StatsService.js
index a7b972f..98ab370 100644
--- a/traffic_portal/app/src/common/api/StatsService.js
+++ b/traffic_portal/app/src/common/api/StatsService.js
@@ -1,6 +1,5 @@
 /*
 
- Copyright 2015 Comcast Cable Communications Management, LLC
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_portal/app/src/common/api/UserService.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/common/api/UserService.js b/traffic_portal/app/src/common/api/UserService.js
index b0be1b9..e393dfa 100755
--- a/traffic_portal/app/src/common/api/UserService.js
+++ b/traffic_portal/app/src/common/api/UserService.js
@@ -1,6 +1,5 @@
 /*
 
- Copyright 2015 Comcast Cable Communications Management, LLC
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_portal/app/src/common/api/index.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/common/api/index.js b/traffic_portal/app/src/common/api/index.js
index 905de93..8d8effe 100755
--- a/traffic_portal/app/src/common/api/index.js
+++ b/traffic_portal/app/src/common/api/index.js
@@ -1,6 +1,5 @@
 /*
 
- Copyright 2015 Comcast Cable Communications Management, LLC
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_portal/app/src/common/directives/enter/EnterDirective.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/common/directives/enter/EnterDirective.js b/traffic_portal/app/src/common/directives/enter/EnterDirective.js
index edd3104..a2b49e3 100644
--- a/traffic_portal/app/src/common/directives/enter/EnterDirective.js
+++ b/traffic_portal/app/src/common/directives/enter/EnterDirective.js
@@ -1,6 +1,5 @@
 /*
 
- Copyright 2015 Comcast Cable Communications Management, LLC
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_portal/app/src/common/directives/enter/index.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/common/directives/enter/index.js b/traffic_portal/app/src/common/directives/enter/index.js
index 16424d4..d141390 100644
--- a/traffic_portal/app/src/common/directives/enter/index.js
+++ b/traffic_portal/app/src/common/directives/enter/index.js
@@ -1,6 +1,5 @@
 /*
 
- Copyright 2015 Comcast Cable Communications Management, LLC
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_portal/app/src/common/directives/formattedDate/FormattedDateDirective.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/common/directives/formattedDate/FormattedDateDirective.js b/traffic_portal/app/src/common/directives/formattedDate/FormattedDateDirective.js
index 7984320..0d77baa 100644
--- a/traffic_portal/app/src/common/directives/formattedDate/FormattedDateDirective.js
+++ b/traffic_portal/app/src/common/directives/formattedDate/FormattedDateDirective.js
@@ -1,6 +1,5 @@
 /*
 
- Copyright 2015 Comcast Cable Communications Management, LLC
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_portal/app/src/common/directives/formattedDate/index.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/common/directives/formattedDate/index.js b/traffic_portal/app/src/common/directives/formattedDate/index.js
index 8bda004..d2c25ac 100644
--- a/traffic_portal/app/src/common/directives/formattedDate/index.js
+++ b/traffic_portal/app/src/common/directives/formattedDate/index.js
@@ -1,6 +1,5 @@
 /*
 
- Copyright 2015 Comcast Cable Communications Management, LLC
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_portal/app/src/common/directives/match/MatchDirective.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/common/directives/match/MatchDirective.js b/traffic_portal/app/src/common/directives/match/MatchDirective.js
index 56d3469..5b4aac7 100644
--- a/traffic_portal/app/src/common/directives/match/MatchDirective.js
+++ b/traffic_portal/app/src/common/directives/match/MatchDirective.js
@@ -1,6 +1,5 @@
 /*
 
- Copyright 2015 Comcast Cable Communications Management, LLC
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_portal/app/src/common/directives/match/index.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/common/directives/match/index.js b/traffic_portal/app/src/common/directives/match/index.js
index a40eb9d..2abd130 100644
--- a/traffic_portal/app/src/common/directives/match/index.js
+++ b/traffic_portal/app/src/common/directives/match/index.js
@@ -1,6 +1,5 @@
 /*
 
- Copyright 2015 Comcast Cable Communications Management, LLC
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_portal/app/src/common/directives/rcSubmit/RCSubmitDirective.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/common/directives/rcSubmit/RCSubmitDirective.js b/traffic_portal/app/src/common/directives/rcSubmit/RCSubmitDirective.js
index aafc88a..be42077 100644
--- a/traffic_portal/app/src/common/directives/rcSubmit/RCSubmitDirective.js
+++ b/traffic_portal/app/src/common/directives/rcSubmit/RCSubmitDirective.js
@@ -1,6 +1,5 @@
 /*
 
- Copyright 2015 Comcast Cable Communications Management, LLC
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_portal/app/src/common/directives/rcSubmit/index.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/common/directives/rcSubmit/index.js b/traffic_portal/app/src/common/directives/rcSubmit/index.js
index eecfd02..a5ca41c 100644
--- a/traffic_portal/app/src/common/directives/rcSubmit/index.js
+++ b/traffic_portal/app/src/common/directives/rcSubmit/index.js
@@ -1,6 +1,5 @@
 /*
 
- Copyright 2015 Comcast Cable Communications Management, LLC
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_portal/app/src/common/directives/rcVerifySet/RCVerifySetDirective.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/common/directives/rcVerifySet/RCVerifySetDirective.js b/traffic_portal/app/src/common/directives/rcVerifySet/RCVerifySetDirective.js
index 7d8ae69..ae9f86a 100644
--- a/traffic_portal/app/src/common/directives/rcVerifySet/RCVerifySetDirective.js
+++ b/traffic_portal/app/src/common/directives/rcVerifySet/RCVerifySetDirective.js
@@ -1,6 +1,5 @@
 /*
 
- Copyright 2015 Comcast Cable Communications Management, LLC
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_portal/app/src/common/directives/rcVerifySet/index.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/common/directives/rcVerifySet/index.js b/traffic_portal/app/src/common/directives/rcVerifySet/index.js
index b1d89ee..d9131f1 100644
--- a/traffic_portal/app/src/common/directives/rcVerifySet/index.js
+++ b/traffic_portal/app/src/common/directives/rcVerifySet/index.js
@@ -1,6 +1,5 @@
 /*
 
- Copyright 2015 Comcast Cable Communications Management, LLC
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_portal/app/src/common/directives/selectOnClick/SelectOnClickDirective.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/common/directives/selectOnClick/SelectOnClickDirective.js b/traffic_portal/app/src/common/directives/selectOnClick/SelectOnClickDirective.js
index 26fa64d..fdd154b 100644
--- a/traffic_portal/app/src/common/directives/selectOnClick/SelectOnClickDirective.js
+++ b/traffic_portal/app/src/common/directives/selectOnClick/SelectOnClickDirective.js
@@ -1,6 +1,5 @@
 /*
 
- Copyright 2015 Comcast Cable Communications Management, LLC
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_portal/app/src/common/directives/selectOnClick/index.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/common/directives/selectOnClick/index.js b/traffic_portal/app/src/common/directives/selectOnClick/index.js
index 2e29c79..ad45830 100644
--- a/traffic_portal/app/src/common/directives/selectOnClick/index.js
+++ b/traffic_portal/app/src/common/directives/selectOnClick/index.js
@@ -1,6 +1,5 @@
 /*
 
- Copyright 2015 Comcast Cable Communications Management, LLC
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_portal/app/src/common/filters/DateRangeFilter.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/common/filters/DateRangeFilter.js b/traffic_portal/app/src/common/filters/DateRangeFilter.js
index 05cb3b8..b5f9d1c 100644
--- a/traffic_portal/app/src/common/filters/DateRangeFilter.js
+++ b/traffic_portal/app/src/common/filters/DateRangeFilter.js
@@ -1,6 +1,5 @@
 /*
 
- Copyright 2015 Comcast Cable Communications Management, LLC
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_portal/app/src/common/filters/OffsetFilter.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/common/filters/OffsetFilter.js b/traffic_portal/app/src/common/filters/OffsetFilter.js
index 8f9dd1c..0e0e9c0 100644
--- a/traffic_portal/app/src/common/filters/OffsetFilter.js
+++ b/traffic_portal/app/src/common/filters/OffsetFilter.js
@@ -1,6 +1,5 @@
 /*
 
- Copyright 2015 Comcast Cable Communications Management, LLC
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/be5ab888/traffic_portal/app/src/common/filters/PartitionFilter.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/common/filters/PartitionFilter.js b/traffic_portal/app/src/common/filters/PartitionFilter.js
index d7703a3..d3f03af 100644
--- a/traffic_portal/app/src/common/filters/PartitionFilter.js
+++ b/traffic_portal/app/src/common/filters/PartitionFilter.js
@@ -1,6 +1,5 @@
 /*
 
- Copyright 2015 Comcast Cable Communications Management, LLC
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.