Re: Travis CI merge request

Chris Bandy <[email protected]>
Newsgroups gmane.comp.db.tds.freetds
Message-ID <CAMDg7WxtZCJXbKrtQYQk66K_4aVv1iC_VxFUWO_dAwF4K=OYdQ@mail.gmail.com>
That's a very good explanation, Marc. I have used Travis CI's secure
environment variables[1] in a small project of mine as well. I invite
others to look at it to see how these variables work:

1. The .travis.yml file contains an "env" entry that is a key/value pair
(rather than a string)[2]. The value is encrypted as Marc described.
2. In my case, the value contains two environment variables. During the
build, Travis CI logs these as "[secure]"[3].
3. All scripts, commands, software, etc of the build are run with these
environment variables set (in plaintext). In my case, download.js fetches
the values from the "env" object.

[1]
http://about.travis-ci.org/docs/user/build-configuration/#Secure-environment-variables
[2] https://github.com/cbandy/travis-oracle/blob/master/.travis.yml
[3] https://travis-ci.org/cbandy/travis-oracle/builds/9338163 (see lines 6
and 7)

-- Chris


On Thu, Nov 14, 2013 at 10:59 AM, Marc Abramowitz <[email protected]>wrote:

> Yeah, Travis creates a public/private key pair for each repo it does
> builds for. They provide a command line utility that will take ENVVAR=VALUE
> pairs and then it will append the encrypted strings (which hides both the
> name and the value) to the .travis.yml file.
>
> This encrypted stuff is hard-coded to work with the private key in the
> FreeTDS/FreeTDS GitHub mirror that I created. It will not work with forks
> that other people create and it will not work with PRs (this is intentional
> on Travis's part - otherwise folks could send PRs that do nasty things with
> the stuff you're trying to protect).
>
> So if people want to fork the GitHub repo...well this is sort of a dubious
> thing to do because usually people fork repos to send PRs and we do not
> want to accept GitHub PRs since GitHub is a read-only mirror and Gitorious
> is the canonical repo...but that aside, if people wanted to have forks on
> GitHub and have Travis CI run on them, they need to have their own SQL
> Server accessible in the cloud somewhere (which again will discourage
> people from going this route) but still...they will need to edit the
> .travis.yml in their fork and delete my encrypted stuff and replace it with
> their own.
>
> In other words, I expect no one to go through the trouble of setting up a
> GitHub fork and an accompanying SQL Server in the cloud, because it's a
> pretty big barrier to entry, but if they do, they can tweak their
> .travis.yml (potentially having to deal with an occasional merge conflict
> if there are upstream changes) and it should work.
>
> I'm not too worried about this use case, because I don't think there are
> many people crazy enough (aside from myself :-)) to set up SQL Server in
> the cloud just so they can have automated tests.
>
> People that want to have CI on their own forks might be better off using
> their own private Jenkins server. I have this as well. I see Travis as
> being valuable for being the "official" CI for FreeTDS because the work of
> setting up the SQL Server in the cloud was done once and because Travis
> makes it easy to show your test results to the world.
>
> Hope that made sense :-)
>
> -Marc
> http://marc-abramowitz.com
> Sent from my iPhone 4S
>
>
> On Nov 14, 2013, at 8:28 AM, Frediano Ziglio <[email protected]> wrote:
>
> > Yes, you are right.
> >
> > From the file:
> >
> > - TDSVER=7.2
> > - secure:
> asqyeUGDEf1oYutUMfhz2t48SKXW/oNd3i29W/csPZaxJbv9Sx1kZbpSqd6LYPtOLB3yNyVNjzFe08fmN84i4Szq/NCtmIwOKBjdbZbT4G1+CH0apQ4HlqdKmZKyrrwtL5twcx1lLNk6YQyDZrSqgUr5FGUAZmNH1eCkdOLCOuk=
> >
> > How does it work? You have a key in the server which decrypt the secure
> stuff ?
> >
> > I noted there is no name specified so perhaps other people can just
> > add their key and expect to work as it cannot conflict with your. What
> > does documentation say about it ?
> >
> > Frediano
> >
> >
> >
> > 2013/11/14 Marc Abramowitz <[email protected]>:
> >> Where are we with:
> >>
> >> https://gitorious.org/freetds/freetds/merge_requests/14
> >>
> >> ?
> >>
> >> Personally, I’d love to see this merged, because Travis CI is not
> perfect
> >> but it’s better than nothing and because I invested a good bit of time
> into
> >> making this work.
> >>
> >> Marc
> >> http://marc-abramowitz.com/
> >> _______________________________________________
> >> FreeTDS mailing list
> >> [email protected]
> >> http://lists.ibiblio.org/mailman/listinfo/freetds
> > _______________________________________________
> > FreeTDS mailing list
> > [email protected]
> > http://lists.ibiblio.org/mailman/listinfo/freetds
> _______________________________________________
> FreeTDS mailing list
> [email protected]
> http://lists.ibiblio.org/mailman/listinfo/freetds
>
_______________________________________________
FreeTDS mailing list
[email protected]
http://lists.ibiblio.org/mailman/listinfo/freetds
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.