Bug 558988 - The ls-based dockerfile editor should be provided by
a separate feature

Allows users to still install the dockerfile editor even if they
already have the master docker feature installed in a read-only
installation of Eclipse.

Change-Id: I81bb95fe87342fd5f2a994ca35658c51461a5038
Signed-off-by: Mat Booth <mat.booth@redhat.com>
Reviewed-on: https://git.eclipse.org/r/155610
Tested-by: Linux Tools Bot <linuxtools-bot@eclipse.org>
Reviewed-by: Alexander Kurtakov <akurtako@redhat.com>
Reviewed-on: https://git.eclipse.org/r/155839
diff --git a/containers/org.eclipse.linuxtools.docker-feature/build.properties b/containers/org.eclipse.linuxtools.docker-feature/build.properties
index 155886c..ad437bf 100644
--- a/containers/org.eclipse.linuxtools.docker-feature/build.properties
+++ b/containers/org.eclipse.linuxtools.docker-feature/build.properties
@@ -4,5 +4,4 @@
 src.includes = feature.xml,\
                feature.properties,\
                build.properties,\
-               .classpath,\
                .project
diff --git a/containers/org.eclipse.linuxtools.docker-feature/feature.xml b/containers/org.eclipse.linuxtools.docker-feature/feature.xml
index 7435bac..57094e8 100644
--- a/containers/org.eclipse.linuxtools.docker-feature/feature.xml
+++ b/containers/org.eclipse.linuxtools.docker-feature/feature.xml
@@ -23,6 +23,10 @@
       <update label="Linux Tools Docker Update Site" url="http://download.eclipse.org/linuxtools/update-docker"/>
    </url>
 
+   <includes
+         id="org.eclipse.linuxtools.docker.editor.ls.feature"
+         version="0.0.0"/>
+
    <plugin
          id="org.eclipse.linuxtools.docker.core"
          download-size="0"
@@ -44,11 +48,4 @@
          version="0.0.0"
          unpack="false"/>
 
-   <plugin
-         id="org.eclipse.linuxtools.docker.editor.ls"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
 </feature>
diff --git a/containers/org.eclipse.linuxtools.docker.editor.ls-feature/.project b/containers/org.eclipse.linuxtools.docker.editor.ls-feature/.project
new file mode 100644
index 0000000..f77d163
--- /dev/null
+++ b/containers/org.eclipse.linuxtools.docker.editor.ls-feature/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.linuxtools.docker.editor.ls-feature</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.pde.FeatureBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.FeatureNature</nature>
+	</natures>
+</projectDescription>
diff --git a/containers/org.eclipse.linuxtools.docker.editor.ls-feature/build.properties b/containers/org.eclipse.linuxtools.docker.editor.ls-feature/build.properties
new file mode 100644
index 0000000..c8e4e44
--- /dev/null
+++ b/containers/org.eclipse.linuxtools.docker.editor.ls-feature/build.properties
@@ -0,0 +1,6 @@
+bin.includes = feature.xml,\
+               feature.properties
+src.includes = build.properties,\
+               feature.properties,\
+               feature.xml,\
+               .project
diff --git a/containers/org.eclipse.linuxtools.docker.editor.ls-feature/feature.properties b/containers/org.eclipse.linuxtools.docker.editor.ls-feature/feature.properties
new file mode 100644
index 0000000..be42090
--- /dev/null
+++ b/containers/org.eclipse.linuxtools.docker.editor.ls-feature/feature.properties
@@ -0,0 +1,10 @@
+# features.properties
+# contains externalized strings for feature.xml
+# "%foo" in feature.xml corresponds to the key "foo" in this file
+# java.io.Properties file (ISO 8859-1 with "\" escapes)
+# This file should be translated.
+
+featureProvider=Eclipse Linux Tools
+featureName=Docker Tooling Editor
+featureDescription=The Docker Tooling Editor feature provides content assist and syntax highlighting when editing Dockerfiles.
+copyright=Copyright 2019, 2020 Red Hat, Inc.
diff --git a/containers/org.eclipse.linuxtools.docker.editor.ls-feature/feature.xml b/containers/org.eclipse.linuxtools.docker.editor.ls-feature/feature.xml
new file mode 100644
index 0000000..d67d74b
--- /dev/null
+++ b/containers/org.eclipse.linuxtools.docker.editor.ls-feature/feature.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<feature
+      id="org.eclipse.linuxtools.docker.editor.ls.feature"
+      label="%featureName"
+      version="4.5.0.qualifier"
+      provider-name="%featureProvider"
+      license-feature="org.eclipse.license"
+      license-feature-version="0.0.0">
+
+   <description url="http://www.eclipse.org/linuxtools">
+      %featureDescription
+   </description>
+
+   <copyright url="http://www.redhat.com">
+      %copyright
+   </copyright>
+
+   <license url="%licenseURL">
+      %license
+   </license>
+
+   <url>
+      <update label="Linux Tools Docker Update Site" url="http://download.eclipse.org/linuxtools/update-docker"/>
+   </url>
+
+   <plugin
+         id="org.eclipse.linuxtools.docker.editor.ls"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"/>
+
+</feature>
diff --git a/containers/org.eclipse.linuxtools.docker.editor.ls-feature/pom.xml b/containers/org.eclipse.linuxtools.docker.editor.ls-feature/pom.xml
new file mode 100644
index 0000000..80737c3
--- /dev/null
+++ b/containers/org.eclipse.linuxtools.docker.editor.ls-feature/pom.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   Copyright (C) 2019, 2020 Red Hat, Inc.
+
+   This program and the accompanying materials are made
+   available under the terms of the Eclipse Public License 2.0
+   which is available at https://www.eclipse.org/legal/epl-2.0/
+  
+   SPDX-License-Identifier: EPL-2.0
+-->
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+      <groupId>org.eclipse.linuxtools</groupId>
+      <artifactId>org.eclipse.linuxtools.docker</artifactId>
+      <version>4.5.0</version>
+  </parent>
+
+  <artifactId>org.eclipse.linuxtools.docker.editor.ls.feature</artifactId>
+  <version>4.5.0-SNAPSHOT</version>
+  <packaging>eclipse-feature</packaging>
+
+  <name>Linux Tools Docker Tooling Editor Feature</name>
+
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.eclipse.tycho.extras</groupId>
+        <artifactId>tycho-source-feature-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>source-feature</id>
+            <phase>package</phase>
+            <goals>
+              <goal>source-feature</goal>
+            </goals>
+          </execution>
+        </executions>
+      </plugin>
+      <plugin>
+        <groupId>org.eclipse.tycho</groupId>
+        <artifactId>tycho-p2-plugin</artifactId>
+        <version>${tycho-version}</version>
+        <executions>
+          <execution>
+            <id>attached-p2-metadata</id>
+            <phase>package</phase>
+            <goals>
+              <goal>p2-metadata</goal>
+            </goals>
+          </execution>
+        </executions>
+      </plugin>
+    </plugins>
+  </build>
+
+</project>
diff --git a/containers/pom.xml b/containers/pom.xml
index e76b341..8e69b63 100644
--- a/containers/pom.xml
+++ b/containers/pom.xml
@@ -33,6 +33,7 @@
     <module>org.eclipse.linuxtools.docker.integration.tests</module>
     <module>org.eclipse.linuxtools.docker.tests-feature</module>
     <module>org.eclipse.linuxtools.docker.editor.ls</module>
+    <module>org.eclipse.linuxtools.docker.editor.ls-feature</module>
     <module>org.eclipse.linuxtools.docker.editor.ls.tests</module>
     <module>org.eclipse.linuxtools.jdt.docker.launcher</module>
     <module>org.eclipse.linuxtools.jdt.docker.launcher-feature</module>
diff --git a/releng/org.eclipse.linuxtools.docker-site/category.xml b/releng/org.eclipse.linuxtools.docker-site/category.xml
index ffd9d38..4b49c54 100644
--- a/releng/org.eclipse.linuxtools.docker-site/category.xml
+++ b/releng/org.eclipse.linuxtools.docker-site/category.xml
@@ -10,13 +10,9 @@
    <feature url="features/org.eclipse.linuxtools.jdt.docker.launcher.feature_0.0.0.qualifier.jar" id="org.eclipse.linuxtools.jdt.docker.launcher.feature" version="0.0.0">
       <category name="Linux Tools"/>
    </feature>
-   <!--
-       Do not expose this until CQ for libraries that
-       dockerfile-language-server-nodejs depends on are approved.
-   <feature url="features/org.eclipse.linuxtools.ls.dockerfile.feature_0.0.0.qualifier.jar" id="org.eclipse.linuxtools.ls.dockerfile.feature" version="0.0.0">
+   <feature url="features/org.eclipse.linuxtools.docker.editor.ls.feature_0.0.0.qualifier.jar" id="org.eclipse.linuxtools.docker.editor.ls.feature" version="0.0.0">
       <category name="Linux Tools"/>
    </feature>
-   -->
    <feature url="features/org.eclipse.linuxtools.docker.tests.feature_0.0.0.qualifier.jar" id="org.eclipse.linuxtools.docker.tests.feature" version="0.0.0">
       <category name="Linux Tools"/>
    </feature>
diff --git a/releng/org.eclipse.linuxtools.target/linuxtools-e4.14.target b/releng/org.eclipse.linuxtools.target/linuxtools-e4.14.target
index d233417..4efd9b7 100644
--- a/releng/org.eclipse.linuxtools.target/linuxtools-e4.14.target
+++ b/releng/org.eclipse.linuxtools.target/linuxtools-e4.14.target
@@ -65,7 +65,7 @@
 <unit id="org.eclipse.platform.ide" version="0.0.0"/>
 <unit id="org.eclipse.equinox.core.feature.feature.group" version="0.0.0"/>
 <unit id="org.eclipse.ui.tests.harness" version="0.0.0"/>
-<repository location="http://download.eclipse.org/eclipse/updates/4.14-I-builds/"/>
+<repository location="http://download.eclipse.org/eclipse/updates/4.14/"/>
 </location>
 <location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
 <unit id="org.eclipse.license.feature.group" version="0.0.0"/>