Intro to Building - raisercostin/software-wiki GitHub Wiki
The patterns regarding software development projects related to building and deploying the software. There are several aspects that influence these: language, build tool, scm tool, scm provider, binary repository provider, docker repository provider.
pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<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>
<prerequisites>
<maven>3.0.4</maven>
</prerequisites>
build.xml
build.sbt
or *.sbt
name := "namek-events"
version := "1.0"
scalaVersion := "2.11.8"
//utils:mine
libraryDependencies += "org.raisercostin" %% "jedi-io" % "0.58"
libraryDependencies += "org.raisercostin" % "raisercostin-commons" % "2.26"
//utils:test
libraryDependencies += "org.scalatest" %% "scalatest" % "3.0.4" % Test
libraryDependencies += "junit" % "junit" % "4.12" % Test
//utils:logging
libraryDependencies += "ch.qos.logback" % "logback-classic" % "1.2.3"
//utils:domains
libraryDependencies += "joda-time" % "joda-time" % "2.9.9" //- deprecated in java8. use java.time.*
resolvers += "raisercostin resolver" at "http://dl.bintray.com/raisercostin/maven"
resolvers += "sonatype-snapshoit" at "https://oss.sonatype.org/content/repositories/snapshots/"
project/plugins.sbt
or project/*.scala
build.xml
-
.gitignore
target\
-
pom.xml
<project> ... <scm> <connection>scm:git:${github.url}.git</connection> <developerConnection>scm:git:${github.url}.git</developerConnection> <url>${github.url}</url> <tag>${project.artifactId}-${project.version}</tag> </scm> ... <properties> <createChecksum>false</createChecksum> <github.user>raisercostin</github.user> <github.repo>${project.artifactId}</github.repo> <github.url>https://github.com/${github.user}/${github.repo}</github.url> </properties> ... </project>
.travis-ci.yml
:
cache:
directories:
- $HOME/.m2
language: java
jdk:
- oraclejdk8
install: mvn install --show-version -DskipTests=true --errors --batch-mode
#script: mvn test --batch-mode -DskipTests=true
script: mvn test --batch-mode
notifications:
email:
recipients:
- [email protected]
on_success: always # default: change
on_failure: always # default: always
branches:
only:
- team/ship4
- master