Re: [sympy] Planet SymPy updates refactoring

2016-08-15 Thread Ondřej Čertík
On Mon, Aug 15, 2016 at 2:30 PM, Aaron Meurer  wrote:
> Would it be difficult to make it so that the upload script also posts
> to Twitter when there is a new post? Right now
> https://twitter.com/planetsympy is using twitterfeed.com, but it's not
> the greatest. There is an update delay, and the post title doesn't
> have the author of the post (see
> https://github.com/sympy/planet-sympy/issues/36).

Here is where the current state (that's online at planet sympy) is checked out:

https://github.com/sympy/planet-sympy/blob/36d2a8ef40b182889998561e5a68865604b3320e/update.sh#L27

and you can see that we remove what's in there, and put there the new
data. So instead, one can save the list of posts in some kind of a
json, or some other format, and then erase everything except this
file, which would be renamed. Then the new planet sympy is generated,
and then you just have to compare these two files (the old json and
the new json) and see what new posts are there.

Then you post to twitter. You just pass in the TWITTER_TOKEN as a
docker variable,
https://gitlab.com/certik/planet-sympy-updater/blob/b63ac0305e252e20676458777f88d0fc8ac73de4/.gitlab-ci.yml#L9,
and define it as a private variable on gitlab (which I have to do
myself).

I don't have time to implement this myself, but that's how it would be
done. Anyone can just send a pull request.

Ondrej

>
> Aaron Meurer
>
> On Mon, Aug 15, 2016 at 3:58 PM, Ondřej Čertík  
> wrote:
>> Hi,
>>
>> I have refactored how planet.sympy.org is updated using these PR and
>> repositories:
>>
>> https://github.com/sympy/planet-sympy/pull/46
>> https://github.com/sympy/planet-sympy/pull/47
>> https://gitlab.com/certik/planet-sympy-updater
>>
>> It's described in the README's how it works, but roughly, the
>> https://github.com/sympy/planet-sympy repo creates a docker image on
>> docker hub, and the https://gitlab.com/certik/planet-sympy-updater
>> then uses GitLab-CI to pull this docker image and run it. This CI job
>> is then triggered every 20 minutes by a cron job installed at
>> https://www.easycron.com. Everything is public, e.g. you can watch all
>> the updates here:
>>
>> https://gitlab.com/certik/planet-sympy-updater/pipelines
>>
>> You can click on it, see the log, and so on. If something breaks, you
>> can see it there, and you can submit PRs to fix it. The only thing
>> that is currently not visible online is the actual cron job, but that
>> is just a very simple webhook of the form:
>>
>> curl -X POST \
>>  -F token=TOKEN \
>>  -F ref=REF_NAME \
>>  https://gitlab.com/api/v3/projects/1525395/trigger/builds
>>
>> that is executed every 20 minutes by the https://www.easycron.com
>> website. If that fails, you will notice that the CI jobs are not being
>> triggered every 20 minutes at:
>> https://gitlab.com/certik/planet-sympy-updater/pipelines, so that's
>> easy to spot/maintain.
>>
>> Ondrej
>>
>> --
>> You received this message because you are subscribed to the Google Groups 
>> "sympy" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to sympy+unsubscr...@googlegroups.com.
>> To post to this group, send email to sympy@googlegroups.com.
>> Visit this group at https://groups.google.com/group/sympy.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/sympy/CADDwiVAH_nwOE-Ye%2BUGxHgJ42oSQp1WWC6J7LZbga6QegAAFgQ%40mail.gmail.com.
>> For more options, visit https://groups.google.com/d/optout.
>
> --
> You received this message because you are subscribed to the Google Groups 
> "sympy" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to sympy+unsubscr...@googlegroups.com.
> To post to this group, send email to sympy@googlegroups.com.
> Visit this group at https://groups.google.com/group/sympy.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/sympy/CAKgW%3D6JeKeLmuoz17Ws7Pt3OY4wwrytWSvFL9VEsedXks3HtQA%40mail.gmail.com.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sympy+unsubscr...@googlegroups.com.
To post to this group, send email to sympy@googlegroups.com.
Visit this group at https://groups.google.com/group/sympy.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/CADDwiVBqoeDKsFjOFeWqQ-AwCd1PU3Ok9Jc4urD9r6DfR%3Dwj4A%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: [sympy] Planet SymPy updates refactoring

2016-08-15 Thread Aaron Meurer
Would it be difficult to make it so that the upload script also posts
to Twitter when there is a new post? Right now
https://twitter.com/planetsympy is using twitterfeed.com, but it's not
the greatest. There is an update delay, and the post title doesn't
have the author of the post (see
https://github.com/sympy/planet-sympy/issues/36).

Aaron Meurer

On Mon, Aug 15, 2016 at 3:58 PM, Ondřej Čertík  wrote:
> Hi,
>
> I have refactored how planet.sympy.org is updated using these PR and
> repositories:
>
> https://github.com/sympy/planet-sympy/pull/46
> https://github.com/sympy/planet-sympy/pull/47
> https://gitlab.com/certik/planet-sympy-updater
>
> It's described in the README's how it works, but roughly, the
> https://github.com/sympy/planet-sympy repo creates a docker image on
> docker hub, and the https://gitlab.com/certik/planet-sympy-updater
> then uses GitLab-CI to pull this docker image and run it. This CI job
> is then triggered every 20 minutes by a cron job installed at
> https://www.easycron.com. Everything is public, e.g. you can watch all
> the updates here:
>
> https://gitlab.com/certik/planet-sympy-updater/pipelines
>
> You can click on it, see the log, and so on. If something breaks, you
> can see it there, and you can submit PRs to fix it. The only thing
> that is currently not visible online is the actual cron job, but that
> is just a very simple webhook of the form:
>
> curl -X POST \
>  -F token=TOKEN \
>  -F ref=REF_NAME \
>  https://gitlab.com/api/v3/projects/1525395/trigger/builds
>
> that is executed every 20 minutes by the https://www.easycron.com
> website. If that fails, you will notice that the CI jobs are not being
> triggered every 20 minutes at:
> https://gitlab.com/certik/planet-sympy-updater/pipelines, so that's
> easy to spot/maintain.
>
> Ondrej
>
> --
> You received this message because you are subscribed to the Google Groups 
> "sympy" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to sympy+unsubscr...@googlegroups.com.
> To post to this group, send email to sympy@googlegroups.com.
> Visit this group at https://groups.google.com/group/sympy.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/sympy/CADDwiVAH_nwOE-Ye%2BUGxHgJ42oSQp1WWC6J7LZbga6QegAAFgQ%40mail.gmail.com.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sympy+unsubscr...@googlegroups.com.
To post to this group, send email to sympy@googlegroups.com.
Visit this group at https://groups.google.com/group/sympy.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/CAKgW%3D6JeKeLmuoz17Ws7Pt3OY4wwrytWSvFL9VEsedXks3HtQA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


[sympy] Planet SymPy updates refactoring

2016-08-15 Thread Ondřej Čertík
Hi,

I have refactored how planet.sympy.org is updated using these PR and
repositories:

https://github.com/sympy/planet-sympy/pull/46
https://github.com/sympy/planet-sympy/pull/47
https://gitlab.com/certik/planet-sympy-updater

It's described in the README's how it works, but roughly, the
https://github.com/sympy/planet-sympy repo creates a docker image on
docker hub, and the https://gitlab.com/certik/planet-sympy-updater
then uses GitLab-CI to pull this docker image and run it. This CI job
is then triggered every 20 minutes by a cron job installed at
https://www.easycron.com. Everything is public, e.g. you can watch all
the updates here:

https://gitlab.com/certik/planet-sympy-updater/pipelines

You can click on it, see the log, and so on. If something breaks, you
can see it there, and you can submit PRs to fix it. The only thing
that is currently not visible online is the actual cron job, but that
is just a very simple webhook of the form:

curl -X POST \
 -F token=TOKEN \
 -F ref=REF_NAME \
 https://gitlab.com/api/v3/projects/1525395/trigger/builds

that is executed every 20 minutes by the https://www.easycron.com
website. If that fails, you will notice that the CI jobs are not being
triggered every 20 minutes at:
https://gitlab.com/certik/planet-sympy-updater/pipelines, so that's
easy to spot/maintain.

Ondrej

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sympy+unsubscr...@googlegroups.com.
To post to this group, send email to sympy@googlegroups.com.
Visit this group at https://groups.google.com/group/sympy.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/CADDwiVAH_nwOE-Ye%2BUGxHgJ42oSQp1WWC6J7LZbga6QegAAFgQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.