diff --git a/.jenkins/jenkins.plugins.slack.SlackNotifier.xml b/.jenkins/jenkins.plugins.slack.SlackNotifier.xml
index 78149ae..60493ab 100644
--- a/.jenkins/jenkins.plugins.slack.SlackNotifier.xml
+++ b/.jenkins/jenkins.plugins.slack.SlackNotifier.xml
@@ -1,3 +1,18 @@
+<!--
+  ~ Copyright 2017-present Open Networking Foundation
+  ~
+  ~ 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.
+  -->
 <jenkins.plugins.slack.SlackNotifier plugin="slack@2.0.1">
   <teamDomain>opencord</teamDomain>
   <authToken>kkueX3fmLtcGV6vM4Sp4NVFz</authToken>
diff --git a/Jenkinsfile.release b/Jenkinsfile.release
new file mode 100644
index 0000000..5535afe
--- /dev/null
+++ b/Jenkinsfile.release
@@ -0,0 +1,32 @@
+# Copyright 2017-present Open Networking Foundation
+#
+# 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.
+
+
+# Releases an individual ONOS app
+
+def app = ${app}
+def branch = ${branch}
+
+node ('master') {
+    stage 'Checkout code'
+
+    checkout changelog: false, poll: false, scm: [$class: 'RepoScm', currentBranch: true,
+        manifestBranch: master, manifestGroup: 'onos',
+        manifestRepositoryUrl: 'https://gerrit.opencord.org/manifest', quiet: true]
+
+    sh returnStdout: true, script: 'cd onos-apps/apps/' + app + ' && git checkout ' + branch   
+
+    stage 'Release'
+    sh returnStdout: true, script: 'cd onos-apps/apps/' + app + ' && mvn -Prelease clean deploy'
+}
diff --git a/settings.xml b/settings.xml
index 3eeb6a0..cf2266d 100644
--- a/settings.xml
+++ b/settings.xml
@@ -1,3 +1,18 @@
+<!--
+  ~ Copyright 2017-present Open Networking Foundation
+  ~
+  ~ 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.
+  -->
 <settings>
   <localRepository>/mavenwd/repository</localRepository>
 </settings>
