Comments (3)
The professional version of TeamCity is free so it seems like one approach is to download the tarball, extract, replace the configs with a checked-in known valid set and trigger a run via the json api. A bit of a rube goldberg to be sure, but all free and do-able.
from intellij-pants-plugin.
Some notes - these basically validate this will work mod the project itself actually building.
Setup
$ mkdir .teamcity
$ curl -L -O http://download.teamcity.com/teamcity/TeamCity-8.1.5.tar.gz
$ tar -xzf TeamCity-8.1.5.tar.gz -C .teamcity
$ curl -L -O http://download.teamcity.com/idea/ideaIC-13.1.5.tar.gz
$ tar -xzf ideaIC-13.1.5.tar.gz -C .teamcity
$ curl -L -O http://scala-lang.org/files/archive/scala-2.9.3.tgz
$ tar -xzf scala-2.9.3.tgz -C .teamcity
$ JDK_16=/opt/jdk1.6 TEAMCITY_DATA_PATH=$PWD/.teamcity/data .teamcity/TeamCity/bin/runAll.sh start
$ curl -sS http://admin:admin@localhost:8111/app/rest/buildTypes/id:IntellijPantsPlugin_Local | xmllint --format -
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<buildType id="IntellijPantsPlugin_Local" name="local" projectName="intellij-pants-plugin" projectId="IntellijPantsPlugin" href="/app/rest/buildTypes/id:IntellijPantsPlugin_Local" webUrl="http://localhost:8111/viewType.html?buildTypeId=IntellijPantsPlugin_Local">
<project id="IntellijPantsPlugin" name="intellij-pants-plugin" parentProjectId="_Root" description="intellij-pants-plugin for TravisCI" href="/app/rest/projects/id:IntellijPantsPlugin" webUrl="http://localhost:8111/project.html?projectId=IntellijPantsPlugin"/>
<vcs-root-entries/>
<settings count="16">
<property name="allowExternalStatus" value="false"/>
<property name="artifactRules" value=""/>
<property name="buildNumberCounter" value="2"/>
<property name="buildNumberPattern" value="%build.counter%"/>
<property name="checkoutDirectory" value="/home/jsirois/dev/3rdparty/jsirois-intellij-pants-plugin/"/>
<property name="checkoutMode" value="MANUAL"/>
<property name="cleanBuild" value="false"/>
<property name="enableHangingBuildsDetection" value="true"/>
<property name="executionTimeoutMin" value="0"/>
<property name="maximumNumberOfBuilds" value="0"/>
<property name="shouldFailBuildIfTestsFailed" value="true"/>
<property name="shouldFailBuildOnAnyErrorMessage" value="false"/>
<property name="shouldFailBuildOnBadExitCode" value="true"/>
<property name="shouldFailBuildOnOOMEOrCrash" value="true"/>
<property name="showDependenciesChanges" value="false"/>
<property name="vcsLabelingBranchFilter" value="+:<default>"/>
</settings>
<parameters count="2" href="/app/rest/buildTypes/id:IntellijPantsPlugin_Local/parameters">
<property name="system.idea.IDEA.IC.home" value="/home/jsirois/dev/3rdparty/jsirois-intellij-pants-plugin/.teamcity/idea-IC-135.1289" own="true"/>
<property name="system.path.macro.SCALA.LIB.HOME" value="/home/jsirois/dev/3rdparty/jsirois-intellij-pants-plugin/.teamcity/scala-2.9.3/lib" own="true"/>
</parameters>
<steps count="1">
<step id="RUNNER_1" name="build project" type="JPS">
<properties>
<property name="iprInfoRunParam" value="<iprInfo path-to-ipr="/home/jsirois/dev/3rdparty/jsirois-intellij-pants-plugin/" should-load-iml="true"> <Jdk name="IDEA IC" path-to-library="%env.JAVA_HOME%" is-used="true" type="IDEA JDK" path-to-jdk="%env.JAVA_HOME%" path-to-idea="%system.idea.IDEA.IC.home%"> <Pattern value="jre/lib/*.jar" /> <IdeaPattern value="lib/*.jar" /> </Jdk> <PathVariable name="SCALA_LIB_HOME" value="%system.path.macro.SCALA.LIB.HOME%" /> </iprInfo>"/>
<property name="jvmArgs" value="-Xmx256m"/>
<property name="target.jdk.home" value="%env.JDK_16%"/>
<property name="teamcity.coverage.emma.include.source" value="true"/>
<property name="teamcity.coverage.emma.instr.parameters" value="-ix -*Test*"/>
<property name="teamcity.coverage.idea.includePatterns" value="*"/>
<property name="teamcity.coverage.jacoco.patterns" value="+:*"/>
<property name="teamcity.step.mode" value="default"/>
</properties>
</step>
</steps>
<features/>
<triggers/>
<snapshot-dependencies/>
<artifact-dependencies/>
<agent-requirements/>
<builds href="/app/rest/buildTypes/id:IntellijPantsPlugin_Local/builds/"/>
</buildType>
Trigger
==
```console
$ curl -D- http://admin:admin@localhost:8111/httpAuth/action.html?add2Queue=IntellijPantsPlugin_Local
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Set-Cookie: TCSESSIONID=A77134CCCACFF853924BA8EACBBD57D6; Path=/; HttpOnly
Set-Cookie: RememberMe=""; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; HttpOnly
Pragma: no-cache
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Cache-Control: no-cache
Cache-Control: no-store
Content-Length: 0
Date: Thu, 16 Oct 2014 01:44:20 GMT
Poll Status
$ curl -sS http://admin:admin@localhost:8111/app/rest/buildTypes/id:IntellijPantsPlugin_Local/builds | xmllint --format -
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<builds count="1" href="/app/rest/buildTypes/id:IntellijPantsPlugin_Local/builds">
<build id="1" buildTypeId="IntellijPantsPlugin_Local" number="1" status="FAILURE" state="finished" href="/app/rest/builds/id:1" webUrl="http://localhost:8111/viewLog.html?buildId=1&buildTypeId=IntellijPantsPlugin_Local"/>
</builds>
API Docs
- https://confluence.jetbrains.com/display/TCD8/Accessing+Server+by+HTTP
- https://confluence.jetbrains.com/display/TCD8/REST+API
from intellij-pants-plugin.
Looks like @fkorotkov got this done!
from intellij-pants-plugin.
Related Issues (20)
- master CI broken
- intellij 2020.1 support HOT 1
- use .python-version on project import
- intellij plugin uses --target-spec-file which was removed HOT 2
- import failed for Pants 1.25.0 when global python is not equal to local HOT 2
- Can't run pants on Mac with IntelliJ 2020.1.1
- No target roots found in build graph HOT 3
- Plugin incompatible with Intellij 2020.2 HOT 13
- "Rerun failed tests" for Scala crashes
- Detect and use Python virtual environment HOT 1
- Pants and Intellij 2020.3 HOT 6
- Travis CI is broken
- Propagate scalac plugin to IntelliJ module
- Incorrect module sources path HOT 1
- Import Project Failure, InvalidLocaleError: Your system's preferred encoding is `US-ASCII`, but Pants requires `UTF-8`
- Update for IntelliJ 2021.1 HOT 6
- After the system python version update to 3.9, I get "No valid Python interpreter found" [PANTS 1.30. IDEA 2020.2/2020.3] HOT 2
- Can't find Scala SDK for org.scala-lang:scala-library:2.13.5
- Cleanup scripts
- Investigate long runninf t
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from intellij-pants-plugin.