Giter Club home page Giter Club logo

auto-ig-builder's People

Contributors

bkaney avatar cmoesel avatar dotasek avatar fhir-bot avatar grahamegrieve avatar jduteau avatar jkiddo avatar jmandel avatar kyleops avatar lodewijksioen avatar oliveregger avatar vadi2 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

auto-ig-builder's Issues

Lost Builds

I've setup the auto-build as described and even got some failed builds -- which proved to me that the auto-build webhook was working. I fixed the issue that caused the initial failures, but now I never get a build notification for my IG (whether triggering via a push or manually) -- and the build.log hasn't changed (it is still that last failed build).

I think my build is getting hung or timing out. Is there any way to get more insight into the build process as it is happening? As it is now, it's very difficult to determine what's going on -- as the build succeeds locally (albeit with reported errors in qa.html), but seems to get lost in the auto-build.

This is for the IG at https://github.com/HL7/us-breastcancer.

Performance issues on WSL

I'm using ig-publisher-base locally on a windows machine with Docker running on the WSL engine. A full publish takes more than 20 minutes. This is because there are serious performance issues in the interop between mounted windows filesystem and the Linux filesystem.

Microsoft's guidance is to copy the files you want to work on over to the container filesystem.
I already did this on my own dockerfile and it reduced the build time from 20 minutes to 30 seconds.

If you're open to this, I can create a PR to contribute.

Auto build ignored

Hi there. I wired up https://github.com/IHTSDO/snomed-ig to the autobuilder (I hope) as instructed and the webhook seemed to go through OK. The request was:

Request method: POST
content-type: application/json
Expect: 
User-Agent: GitHub-Hookshot/6c8e069
X-GitHub-Delivery: 09035010-d0b9-11e9-93e9-70c19722e856

and I got an HTTP 200 back:

Access-Control-Allow-Headers: Content-Type
Access-Control-Allow-Method: POST, OPTIONS
Access-Control-Allow-Origin: *
Content-Length: 53
Content-Type: application/json; charset=utf-8
Date: Fri, 06 Sep 2019 15:14:35 GMT
Function-Execution-Id: gowwl9mp7jmf
Body
{"org":"IHTSDO","repo":"snomed-ig","branch":"master"}

But no notification appeared in Zulip and I can't see "ihtsdo" as a folder when I browse to https://build.fhir.org/ig/

Can any further investigation be done from my end? I did already try the "redeliver" button.
Thanks!

GitLab sends via text/plain

Hello,
What would be the difficulty in adding support for building from GitLab repositories? I tried building an IG from https://gitlab.mitre.org/ this week, and wasn't successful. I'm assuming that https://github.com is hardcoded in the codebase at the current moment.

Update: It appears that GitLab is sending data via plain/text and doesn't offer an option to send via application/json.

Add ability to ignore commits from the gh-pages branch

Commits on any branch trigger the ig auto-build. I am publishing my website on the gh-pages branch of my repository, and don't want to trigger the auto-build when that content changes. (I expect any build on that branch is going to fail.) It would be great to be able for the auto-build to ignore the gh-pages branch (or to somehow specify which branches to ignore, for example with the presence of a "no-ig-build" file in the root directory of the branch).

See Zulip chat

Overview page showing all built IGs

On each successful build, update a JSON file or db that includes a full manifest of build results:

  • Each built IG
  • FHIR version
  • Date built
  • Build outcome

Then build a static web page that can render these results, perhaps with a "rebuild" button.

Propagate failure if upload is truncated

See discussion at https://chat.fhir.org/#narrow/stream/179165-committers/topic/Build.2Efhir.2Eorg.20is.20gone.3F/near/286425705

Explanation: https://unix.stackexchange.com/questions/312631/bash-script-with-set-e-doesnt-stop-on-command

In

tar xzf - && date --iso-8601 > ~/uploading/$TARGET/done.txt

And in

tar xzf - && date --iso-8601 > ~/uploading/$TARGET/done.txt

tar xzf - && date --iso-8601 > ~/uploading/$TARGET/done.txt

... the use of && with set -e means the script doesn't actually stop here if the upload is truncated.

The fix is to do

    tar xzf - && date --iso-8601 > ~/uploading/$TARGET/done.txt || false

Query - is branch aware building possible?

Hello, firstly let me say how useful and easy to use this tool is. Thank you.

I have a query regarding git branching workflow and am wondering if the build process can build the content of a branch other than the master branch. To make this clearer, I'll explain our workflow.

We are contributing to the HL7 Australia base profile repository via a fork / pull request methodology. Our team members each have a fork of this repository to which we push our proposed changes within a specific feature branch. For example, I have just pushed a minor change into a branch "observation-age-examples" within my forked copy. Once I have completed the desired changes within this branch, our process is to have this content peer-reviewed by a team member and once passed, the pull request will be submitted. And in order to facilitate this peer-review, a rendered build and QA report are included in the review (along with direct xml examination etc). Currently for the reviewer to get the build, they need to clone my fork, checkout the branch and do a local build with the IG publisher. This becomes onerous when there are multiple branches from multiple forks to review.

So, that led me to wonder if this server-side auto build process can be branch aware. So that a commit to a given branch other than master would invoke a publication build and this build would use the content of the feature branch rather than the master branch. That way, I could point my reviewer to this build and they could examine the rendered content specific to my branch additions.

I gave this a try to test for myself and found that a commit in my feature branch above, when pushed to my fork with the hook set up, does invoke the trigger to have a build performed. However, the additional content within the branch is not included as it looks to use whatever is the content of the master branch. From the docs I couldn't tell if there was any way to build from a given branch other than master, or if it was even possible. I suspect though that it is not possible as currently configured. If not, is this a feature that could be considered?

Apologies for the long-winded description which hopefully makes sense. I am happy to provide any other details as needed.

Thank you
Rob

Is `master` branch required?

Currently the Quick Start Guide on the README page says:

  1. Put your IG on GitHub: create a GitHub repository within your own organization, and push your content to GitHub. For compatibility with the publication pipeline, your default branch must be named master, not main. (If you're interested in contributing to remove this limitation, please talk to us at chat.fhir.org)

I did change the default branch to master in one of my IG's, and everything was OK. I got http://build.fhir.org/ig/fhir-fi/finnish-smart/branches/ig-description/index.html.

However, I decided to test with another IG that uses main as the default branch, and that seemed to work too. At least I saw the result in http://build.fhir.org/ig/fhir-fi/finnish-base-profiles/branches/terminologies/index.html.

Does the requirement for master branch as the default only become evident at a later phase in the publication process? Or did someone come talk to you at chat.fhir.org and the limitation is removed and the documentation is just outdated?

Catch and report when git clone fails

do(['git', 'clone', '--recursive', GITHUB%config, '--branch', config['branch'], 'repo'], temp_dir, deadline=True)

If this fails in builder.py, subsequent commands thrown an uncaught error.

  1. Fail explicitly if this git command does not work
  2. Upload failure logs and report to zulip on uncaught errors

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.