oneclick/rubyinstaller-org repository

29 views
Skip to first unread message

Luis Lavena

unread,
Jan 2, 2012, 3:56:57 PM1/2/12
to rubyin...@googlegroups.com
Hello,

Those who are part of RubyInstaller developer group on GitHub should
have received a notification of a newer repository:

https://github.com/oneclick/rubyinstaller-org

The above repository contains the initial work of building a
Sinatra-based application that serves RubyInstaller website.

Q: But you guys already have a website, why invest time on doing it
again instead of [awesome-feature-here]?

A: Doing a release of one version of Ruby involves:

1) Compilation
2) Running tests and upload results to GitHub (gist)
3) Packaging installer/7zip/docs
4) Generate MD5 of the packages
5) Create our release notes (from History.txt and links to Ruby)
6) Upload those packages to S3 (for our CDN/alternate download location)
7) Upload those packages RubyForge along with the release notes
8) Update MD5 files on rubyinstaller.org
9) Update headers for those files so are text/plain
9) Update downloads and archives pages (HTML) and move links around
10) Create a new page for the news announcement
11) Announce on RubyInstaller and ruby-talk lists

As you can see, lot of these steps requires manual work and is highly
error prone, I mess up some MD5 once and required me upload files
again...

So, with that in mind, I'm planning on generate a Release package
information to be added to rubyinstaller-org codebase and deployed.

Also, I want to move away from RubyForge and provide S3/CloudFront as
primary source of downloads. For that to happen, I want to start
tracking downloads in a reliable way and help me better track
RubyInstaller's operational costs.

I want to make more easy for others to contribute to our website, so
having the pages available on GitHub makes more easy to fork and
correct.

There is a new section called "Getting Started". I did record some
screencast over the holidays that cover RubyInstaller and DevKit
installation instructions. I hope documenting that process will lower
the emails and issues we normally see around the installation process.

Last but no least, wanted to thank everybody who contributed, not just
with code but also answering emails and helping out other developers
during 2011.

My best wishes for 2012 be a bigger year for RubyInstaller.

Thank you.
--
Luis Lavena
AREA 17
-
Perfection in design is achieved not when there is nothing more to add,
but rather when there is nothing more to take away.
Antoine de Saint-Exupéry

Jon

unread,
Jan 3, 2012, 2:04:01 PM1/3/12
to rubyin...@googlegroups.com
> Those who are part of RubyInstaller developer group on GitHub should
> have received a notification of a newer repository:
>
> https://github.com/oneclick/rubyinstaller-org
>
> The above repository contains the initial work of building a
> Sinatra-based application that serves RubyInstaller website.
>
> Q: But you guys already have a website, why invest time on doing it
> again instead of [awesome-feature-here]?
>
> A: Doing a release of one version of Ruby involves:
>
> 1) Compilation
> 2) Running tests and upload results to GitHub (gist)
> 3) Packaging installer/7zip/docs
> 4) Generate MD5 of the packages
> 5) Create our release notes (from History.txt and links to Ruby)
> 6) Upload those packages to S3 (for our CDN/alternate download location)
> 7) Upload those packages RubyForge along with the release notes
> 8) Update MD5 files on rubyinstaller.org
> 9) Update headers for those files so are text/plain
> 9) Update downloads and archives pages (HTML) and move links around
> 10) Create a new page for the news announcement
> 11) Announce on RubyInstaller and ruby-talk lists
>
> As you can see, lot of these steps requires manual work and is highly
> error prone...


I like Sinatra, but for what you want to do, do you think you'll need/want anything beyond what a static site generator like http://nanoc.stoneship.org/ can give?

I've found that Nanoc on Windows has none of Jekyll's peculiarities (pygments, posix-spawn), uses an interesting compile workflow, supports interesting filters, and seems quite extensible.


Jon

---
Fail fast. Fail often. Fail publicly. Learn. Adapt. Repeat.
http://thecodeshop.github.com | http://jonforums.github.com/
twitter: @jonforums

Luis Lavena

unread,
Jan 3, 2012, 2:10:09 PM1/3/12
to rubyin...@googlegroups.com
On Tue, Jan 3, 2012 at 4:04 PM, Jon <jon.f...@gmail.com> wrote:
>
> I like Sinatra, but for what you want to do, do you think you'll need/want anything beyond what a static site generator like http://nanoc.stoneship.org/ can give?
>

I want to track downloads and direct links to files which a static
website can't do. I know I can do Google Analytics but that is good
for browsers, not direct links downloads.

> I've found that Nanoc on Windows has none of Jekyll's peculiarities (pygments, posix-spawn), uses an interesting compile workflow, supports interesting filters, and seems quite extensible.
>

I've started to use for another site middleman as static generator and
so far is good, but the purpose here is more than just static.

Charles Roper

unread,
Jan 6, 2012, 12:03:46 PM1/6/12
to rubyin...@googlegroups.com
On 3 January 2012 19:10, Luis Lavena <luisl...@gmail.com> wrote:

> I've started to use for another site middleman as static generator and
> so far is good, but the purpose here is more than just static.

What about Nesta CMS? I've used it on Windows and found it works well.
No database involved (unless you need one). Geoffrey uses it for the
Peepcode site.

Charles

Luis Lavena

unread,
Jan 6, 2012, 12:12:18 PM1/6/12
to rubyin...@googlegroups.com

Thank you Charles

Nesta depends on sass, haml and rdiscount and RedCloth, I'm not going
to convert designer-provided HTML to haml to take advantage of it.

Uses bundler (everybody loves bundler but is too much for a simple site)

Recommends usage of shotgun to run locally, something that
sinatra/reloader manages a bit better (without shooting on your own
food)

I'm going to push the releases pages this weekend and let you guys
know, so far adding stuff and modifying has been a better experience
than dealing with Radiant (it takes me less time)

Charles Roper

unread,
Jan 6, 2012, 12:43:44 PM1/6/12
to rubyin...@googlegroups.com
On 6 January 2012 17:12, Luis Lavena <luisl...@gmail.com> wrote:

> Nesta depends on sass, haml and rdiscount and RedCloth, I'm not going
> to convert designer-provided HTML to haml to take advantage of it.

Yeah, although it depends on those things by default, you can swap out
the templating engines:

http://nestacms.com/docs/design/templating-engines

No worries though. I just thought I'd suggest it in case you hadn't
already considered it.

> Recommends usage of shotgun to run locally, something that
> sinatra/reloader manages a bit better (without shooting on your own
> food)

Yeah, the advice to use shotgun is kind of annoying for Windows users.
I suggested sinatra/reloader, but it was never implemented. I guess
the author didn't have enough of an itch to scratch and nor did I. :-)

> I'm going to push the releases pages this weekend and let you guys
> know, so far adding stuff and modifying has been a better experience
> than dealing with Radiant (it takes me less time)

Nice one, I'll look forward to seeing that. I agree about Radiant -
it's kind of a PITA to maintain database-stored templates and, to a
lesser extent, content. I like having everything in text files.

Charles

Luis Lavena

unread,
Jan 6, 2012, 3:51:19 PM1/6/12
to rubyin...@googlegroups.com
On Fri, Jan 6, 2012 at 2:43 PM, Charles Roper
<rea...@charlesroper.co.uk> wrote:
> On 6 January 2012 17:12, Luis Lavena <luisl...@gmail.com> wrote:
>
>> Nesta depends on sass, haml and rdiscount and RedCloth, I'm not going
>> to convert designer-provided HTML to haml to take advantage of it.
>
> Yeah, although it depends on those things by default, you can swap out
> the templating engines:
>
> http://nestacms.com/docs/design/templating-engines
>
> No worries though. I just thought I'd suggest it in case you hadn't
> already considered it.
>

Thank you.

The thing is that since "nesta" gem depend on these other libraries,
these must be installed during "gem install", even if you later
decided to opt for other template engine.

On old versions of RubyGems, just having those dependencies would
result in the activation of all the dependencies. I'm getting old and
my control-freakness is to the maximum :P

>> I'm going to push the releases pages this weekend and let you guys
>> know, so far adding stuff and modifying has been a better experience
>> than dealing with Radiant (it takes me less time)
>
> Nice one, I'll look forward to seeing that. I agree about Radiant -
> it's kind of a PITA to maintain database-stored templates and, to a
> lesser extent, content. I like having everything in text files.
>

I find very problematic edit HTML on a text area :P

Cheers,

Luis Lavena

unread,
Jan 7, 2012, 7:31:08 PM1/7/12
to rubyin...@googlegroups.com

Wanted to let you know that I've pushed my initial work on Releases:
https://github.com/oneclick/rubyinstaller-org/blob/master/lib/models.rb

And the data how it is structured/organized:
https://github.com/oneclick/rubyinstaller-org/blob/master/data/releases/ruby/1.8.7-p357.yml

Loading/reloading the data during development:
https://github.com/oneclick/rubyinstaller-org/blob/master/lib/website.rb#L19

How they are loaded and decorated for "/downloads" page:
https://github.com/oneclick/rubyinstaller-org/blob/master/lib/website.rb#L36-47

Decorator:
https://github.com/oneclick/rubyinstaller-org/blob/master/lib/decorators.rb

Of course I'm missing latest 1.9.2 and also build the archives page,
but you get the idea.

I've added some notes in the HTML, for example, missing the date of
the release and organization of the links.

Will ask a friend to help me out with that.

I'm setting up a "staging" environment for this with Ruby 1.9.3-p0,
will send the link over the weekend.

Cheers,

Luis Lavena

unread,
Jan 7, 2012, 8:18:27 PM1/7/12
to rubyin...@googlegroups.com
On Sat, Jan 7, 2012 at 9:31 PM, Luis Lavena <luisl...@gmail.com> wrote:
>
> I'm setting up a "staging" environment for this with Ruby 1.9.3-p0,
> will send the link over the weekend.
>

http://ec2-107-21-166-250.compute-1.amazonaws.com/
http://ec2-107-21-166-250.compute-1.amazonaws.com/downloads

Staging environment running on EC2 thanks to EngineYard Cloud.
I think that Heroku with their Buildpacks will be able to host a
Isolate-based application, haven't tested it yet.

Lot to be done, but is satisfying seen this live.

Feel free to look at the code.

Cheers!

Reply all
Reply to author
Forward
0 new messages