Jan Vrany <jan.vrany@fit.cvut.cz> [Tue, 15 Nov 2016 09:03:17 +0000] rev 74
Pipeline: use dedicated workspace to checkout and load pipeline script
...as it seems that `checkout` steps cleans up existing workspace contents.
This is not desirable as checkout takes ages on Windows guests.
Jan Vrany <jan.vrany@fit.cvut.cz> [Mon, 14 Nov 2016 22:32:36 +0000] rev 73
Merge
Jan Vrany <jan.vrany@fit.cvut.cz> [Fri, 04 Nov 2016 00:22:47 +0000] rev 72
Added support for checking out a particular revision
...or tag or bookmark. For now it is implemented only for
Mercurial SCM.
If revision is not specified, then bookmark `master` is
checked out. If there's no such bookmark and branch has
multiple heads, then error is thrown. If it has only one
head, that one is checked out.
Jan Vrany <jan.vrany@fit.cvut.cz> [Thu, 03 Nov 2016 22:27:02 +0000] rev 71
Cleanup in `scm.rb`: Unified API of `checkout` and `update` functions.
Also use Ruby's **kwargs notation to access keyword arguments rather
than messing with *varargs notation. Man, this is an ancient code!
I was pretty new to practical Ruby back then...
Jan Vrany <jan.vrany@fit.cvut.cz> [Mon, 14 Nov 2016 20:09:29 +0000] rev 70
Changed logic used to check whether to checkout or download stc and librun:
* If repository named `swing:private:hg` is defined, then checkout sources,
* otherwise, download from public SWING CI server.
Jan Vrany <jan.vrany@fit.cvut.cz> [Wed, 02 Nov 2016 22:00:20 +0000] rev 69
Initial support for Jenkins pipelines.
Jan Vrany <jan.vrany@fit.cvut.cz> [Wed, 02 Nov 2016 10:39:54 +0000] rev 68
Added new tasks - `workflow:push-upstream` and `workflow:push-staging`
...to push currently checked out revisios to upstream or staging repositories.
* `workflow:push-staging` is meant to be used by developers to push changes
to staging repositories in order to build them on CI and check whether all
are correct.
* `workflow:push-upstream` is to be used on CI server to push changes to an
upstream (or canonical) repositories once all test pass on all platforms
and configurations.
Jan Vrany <jan.vrany@fit.cvut.cz> [Wed, 02 Nov 2016 00:18:25 +0000] rev 67
Added support for canonical, upstream and staging repositores.
Each repository (forest) can now specify three repository URLS
- (mandatory), "upstream: and "staging" repository (bothoptional).
When a "staging" repository is configured, commits are first
pulled from "staging" repository and then from "canonical"
(assuming "staging" repository is local so this should avoid
network trafic to canonical repositories).
When an "upstream" repository is configured, changes are pulled
from an "upstream" after pulling fron "staging" but before pulling
from a canonical repository.
This allows to define a hierarchy of repositories for staged
development. This means, it allows for changes (commits) to go
from one repository to another before eventually reaching
a canonical repository from which official builds should be
done. At each step commits should be verified and tested before
they're pushed to upstream to avoid pushing broken code.
Jan Vrany <jan.vrany@fit.cvut.cz> [Sat, 29 Oct 2016 23:54:12 +0000] rev 66
Refactored SCM support to use `hglib.rb` for performing Mercurial related tasks
...rather than issuing hg commands by hand. `hglib.rb` provides higher-level API
for repositories and thus would allow more complex logic (such as using mirrors
to fetch base or smarter handling of bookmarks) being written in a more concise
way.
Jan Vrany <jan.vrany@fit.cvut.cz> [Thu, 27 Oct 2016 09:01:50 +0000] rev 65
Project `stx:jv-branch`: Ouch, added missing prerequisite to SmallSense
Dependency of `stx:goodies/smallsense` on `stx:libhtml` was missing.
We should really generate dependencies from project definitions.