[UIMA-6298] Migrate UIMA Build Resources to GitHub

- Changed SCM from SVN to GIT
- Added Jenkinsfile
- Added .gitignore and .gitattributes
- Added asl.yaml
- Added GitHub pull requeest template
- Added README.md
diff --git a/.asf.yaml b/.asf.yaml
new file mode 100644
index 0000000..b58f16c
--- /dev/null
+++ b/.asf.yaml
@@ -0,0 +1,40 @@
+#   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.
+github:
+  description: "Apache UIMA Build Resources"
+  homepage: https://uima.apache.org
+notifications:
+    commits:      commits@uima.apache.org
+    issues:       dev@uima.apache.org
+    pullrequests: dev@uima.apache.org
+    jira_options: link label
+github:
+  features:
+    # Enable wiki for documentation
+    wiki: false
+    # Enable issue management
+    issues: false
+    # Enable projects for project management boards
+    projects: false
+  enabled_merge_buttons:
+    # enable squash button:
+    squash:  true
+    # enable merge button:
+    merge:   true
+    # disable rebase button:
+    rebase:  false
+    
\ No newline at end of file
diff --git a/.gitattributes b/.gitattributes
new file mode 100644
index 0000000..e708bb1
--- /dev/null
+++ b/.gitattributes
@@ -0,0 +1,20 @@
+# Set the default behavior, in case people don't have core.autocrlf set.
+#   means that files that GIT determines to be text files, will be 
+#     converted from CRLF -> LF upon being added to the repo, and
+#     converted from LF -> LF or CRLF when checked out (depending on the platform, I think)
+* text=auto
+
+# Make sure that these files are treated as binary so that newlines are preserved.
+#   overrides GIT's determination if a file is text or not
+*.bin binary
+*.dump binary
+*.xcas binary
+*.xmi binary
+#  next is probably the default
+*.pdf binary
+
+# These files cannot have crlf, must have just lf
+# The "text" by itself says these files must be line-ending-conversion controlled on check-in / out
+#   The internal repo form for these is always lf, 
+#   The eol=lf means on check-out do nothing, and on check-in, if the file has crlf, convert to lf
+*.sh text eol=lf
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
new file mode 100644
index 0000000..be60b81
--- /dev/null
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -0,0 +1,18 @@
+**JIRA Ticket:** https://issues.apache.org/jira/browse/UIMA-XXXX
+
+**What's in the PR**
+* ...
+
+**How to test manually**
+* ...
+
+**Automatic testing**
+* [ ] *PR adds/updates unit tests*
+
+**Documentation**
+* [ ] *PR adds/updates documentation*
+
+**Organizational**
+- [ ] *PR includes new dependencies.* Only dependencies under [approved licenses](http://www.apache.org/legal/resolved.html#category-a) are allowed.
+      LICENSE and NOTICE files in the respective modules where dependencies have been added as
+      well as in the project root have been updated.
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..043d64d
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,12 @@
+.classpath
+.project
+.settings
+target
+META-INF
+checkpoint_synchPoint.xml
+checkpoint_synchPoint.xml.prev
+checkpoint.dat
+checkpoint.dat.prev
+api-change-report
+.factorypath
+issuesFixed
diff --git a/Jenkinsfile b/Jenkinsfile
new file mode 100644
index 0000000..cc06c8b
--- /dev/null
+++ b/Jenkinsfile
@@ -0,0 +1,110 @@
+// 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.
+  
+pipeline {
+  agent any
+  
+  tools { 
+    maven 'maven_latest' 
+    jdk 'jdk_11_latest' 
+  }
+
+  options {
+    buildDiscarder(logRotator(
+      numToKeepStr: '25', 
+      artifactNumToKeepStr: '5'
+    ))
+    
+    // Seems not to be working reliably yet: https://issues.jenkins-ci.org/browse/JENKINS-48556
+    // timestamps()
+  }
+  
+  parameters {
+    string(
+      name: 'extraMavenArguments',
+      defaultValue: "",
+      description: "Extra arguments to be passed to maven (for testing)")
+  }
+
+  stages {
+    // Display information about the build environemnt. This can be useful for debugging
+    // build issues.
+    stage("Build info") {
+      steps {
+        echo '=== Environment variables ==='
+        script {
+          if (isUnix()) {
+            sh 'printenv'
+          }
+          else {
+            bat 'set'
+          }
+        }
+      }
+    }
+        
+    // Perform a merge request build. This is a conditional stage executed with the GitLab
+    // sources plugin triggers a build for a merge request. To avoid conflicts with other
+    // builds, this stage should not deploy artifacts to the Maven repository server and
+    // also not install them locally.
+    stage("Pull request build") {
+      when { branch 'PR-*' }
+    
+      steps {
+        script {
+          currentBuild.description = 'Triggered by: <a href="' + CHANGE_URL + '">' + BRANCH_NAME +
+            ': ' + env.CHANGE_BRANCH + '</a> (' +  env.CHANGE_AUTHOR_DISPLAY_NAME + ')'
+        }
+
+        withMaven() {
+          sh script: 'mvn ' +
+            params.extraMavenArguments +
+            ' -U -Dmaven.test.failure.ignore=true clean verify'
+        }
+        
+        script {
+          def mavenConsoleIssues = scanForIssues tool: mavenConsole()
+          def javaIssues = scanForIssues tool: java()
+          def javaDocIssues = scanForIssues tool: javaDoc()
+          publishIssues issues: [mavenConsoleIssues, javaIssues, javaDocIssues]
+        }
+      }
+    }
+    
+    // Perform a SNAPSHOT build of a main branch. This stage is typically executed after a
+    // merge request has been merged. On success, it deploys the generated artifacts to the
+    // Maven repository server.
+    stage("SNAPSHOT build") {
+      when { branch pattern: "master|master-v2", comparator: "REGEXP" }
+      
+      steps {
+        withMaven() {
+          sh script: 'mvn ' +
+            params.extraMavenArguments +
+            ' -U -Dmaven.test.failure.ignore=true clean deploy'
+        }
+        
+        script {
+          def mavenConsoleIssues = scanForIssues tool: mavenConsole()
+          def javaIssues = scanForIssues tool: java()
+          def javaDocIssues = scanForIssues tool: javaDoc()
+          publishIssues issues: [mavenConsoleIssues, javaIssues, javaDocIssues]
+        }
+      }
+    }
+  }
+}
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..0d1559e
--- /dev/null
+++ b/README.md
@@ -0,0 +1,7 @@
+[![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.apache.uima/uima-build-resources/badge.svg)](https://maven-badges.herokuapp.com/maven-central/org.apache.uima/uima-build-resources/)
+
+Apache UIMA Build Resources
+---------------------------
+
+This repository contains the resources used for the Maven-based build processes of the Apache 
+UIMA projects.
diff --git a/pom.xml b/pom.xml
index 4ff05c8..edd73c6 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,107 +1,103 @@
 <!--

 

-    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.

+  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.

 -->

-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

+<project xmlns="http://maven.apache.org/POM/4.0.0"

+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

+  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

   <modelVersion>4.0.0</modelVersion>

 

   <parent>

     <groupId>org.apache.uima</groupId>

     <artifactId>parent-pom</artifactId>

     <version>6</version>

-    <relativePath>../parent-pom</relativePath>

+    <relativePath/>

   </parent>

-  

+

   <artifactId>uima-build-resources</artifactId>

   <version>6-SNAPSHOT</version>

-  

+

   <name>Apache UIMA ${project.artifactId}</name>

   <description>This Jar contains resources

     referred to by maven coordinates,

     needed during building

   </description>

- 

+

   <inceptionYear>2010</inceptionYear>

-  

+

   <scm>

     <connection>

-      scm:svn:http://svn.apache.org/repos/asf/uima/build/trunk/uima-build-resources

+      scm:git:https://github.com/apache/uima-build-resources

     </connection>

     <developerConnection>

-      scm:svn:https://svn.apache.org/repos/asf/uima/build/trunk/uima-build-resources

+      scm:git:https://github.com/apache/uima-build-resources

     </developerConnection>

     <url>

-      http://svn.apache.org/viewvc/uima/build/trunk/uima-build-resources

+      https://github.com/apache/uima-build-resources/tree/master

     </url>

   </scm>

-      

+

   <properties>

-    <jiraVersion>12321548</jiraVersion>  

+    <jiraVersion>12321548</jiraVersion>

     <uimaWebsiteUrl>http://uima.apache.org</uimaWebsiteUrl>

     <uimaWebsiteDistributionUrl>scp://people.apache.org/www/uima.apache.org/</uimaWebsiteDistributionUrl>

   </properties>

 

   <build>

-    

     <plugins>

-      

-      <!-- Call the Bundle goal for the remote-resources plugin -->          

+      <!-- Call the Bundle goal for the remote-resources plugin -->

       <plugin>

         <groupId>org.apache.maven.plugins</groupId>

         <artifactId>maven-remote-resources-plugin</artifactId>

-        <executions>      

+        <executions>

           <execution>

-            <goals><goal>bundle</goal></goals>

+            <goals>

+              <goal>bundle</goal>

+            </goals>

           </execution>

         </executions>

       </plugin>

-                            

-    </plugins>     

-    

+    </plugins>

   </build>

-  

+

   <profiles>

     <profile>

       <id>apache-release</id>

- 

       <properties>

         <sourceReleaseAssemblyDescriptor>source-release</sourceReleaseAssemblyDescriptor>

       </properties>

       <build>

         <plugins>

-        

-          <!-- use "standard" source-release assembly -->         

-	        <plugin>

-	          <artifactId>maven-changes-plugin</artifactId>

-	          <executions>

-	            <execution>

-	              <id>default-cli</id>

-	              <configuration>

-	                <fixVersionIds>${jiraVersion}</fixVersionIds>

-	                <sortColumnNames>Status, Key, Type</sortColumnNames>

-	              </configuration>

-	            </execution>

-	          </executions>

-	        </plugin>     

+          <!-- use "standard" source-release assembly -->

+          <plugin>

+            <artifactId>maven-changes-plugin</artifactId>

+            <executions>

+              <execution>

+                <id>default-cli</id>

+                <configuration>

+                  <fixVersionIds>${jiraVersion}</fixVersionIds>

+                  <sortColumnNames>Status, Key, Type</sortColumnNames>

+                </configuration>

+              </execution>

+            </executions>

+          </plugin>

         </plugins>

       </build>

     </profile>

-    

   </profiles>

-

 </project>
\ No newline at end of file