#5117 RFR: Dev box for new pastebin application
Closed: Fixed Opened by athmane.

= phenomenon =

paste.f.o is currently based on sticky-notes (LAMP stack) - technically EPEL pkg which is 0.4 branch + patches.

= reason =

sticky-notes was abandoned by upstream while ago. I'd like to have a test VM to deploy python-ownpaste and eventually replace the current application.

ownpaste is a Flask/SQLAlchemy application which is more preferable stack at Fedora Infra, even if upstream abandon it we can still maintain it internally or fork it.

'''ownpaste drawbacks:''' very basic UI since it supposed to be call via REST.

= recommendation =

I need a VM w/: 1vCPU / 4G Mem / 150 G disk / OS: RHEL 7.x

External IP or published via reverse proxy for testing fpaste-client

I'll add the missing feature if needed.

Review request: https://bugzilla.redhat.com/show_bug.cgi?id=1310246


I started writing a replacement for our sticky-notes instance a while back as a learning exercise in Haskell web app development. I talked with Kevin a few weeks ago about it, and he gave me a list of requirements to ensure it has and was okay with trying it, but I haven't set it up anywhere in Infrastructure yet. Let me clean up what I have a bit and I'll throw the repo on GitHub and/or Pagure. There's still a few things I'd like to add to it before I set up an instance for people to play with.

My current (but as of yet, unimplemented) plans are:

  • fully fpaste-compatible API
  • non predictable public urls (so people can't scrape all pastes for passwords/etc)
  • paste expiry
  • blacklist of words to reject pastes that have them
  • way to delete pastes by admins

In the future, it might also be nice to allow multiple files in one paste (similar to GitHub's Gist).

Kevin and I talked about whether or not it's necessary to import old pastes from sticky-notes and are leaning toward "no" -- however if someone put up a convincing argument, I could work on a way to import them.

I've talked with Haskell SIG about this (CCing Jens Petersen) and they are on board for helping. I've also talked with pingou who was okay with the idea, and Patrick who was skeptical but told me to keep working on it and we can talk later about the clarity of the code and so on.

The biggest issue with doing it in Haskell is packaging dependencies. The short-term plan would be to stick them in the infra repo and gradually get them into Fedora.

Please note that as I indicated on the review bugzilla as well, the upstream for python-ownpaste seems to have disappeared: the latest release is from June 2012, and the URL for upstream that is mentioned on their documentation site (http://hg.rafaelmartins.eng.br/ownpaste/), could not even be found in DNS.

The fact that the last release is from 2012 makes it even more dead than sticky-notes, which had its last git push in February 2015.

On the other hand, I do like the basis of python-ownpaste being standard python2 with Flask and pygments. If someone were to pick up upstream maintenance for it, that would be my preference as python+Flask is what most of the team has experience with.

Replying to [comment:2 puiterwijk]:

Please note that as I indicated on the review bugzilla as well, the upstream for python-ownpaste seems to have disappeared: the latest release is from June 2012, and the URL for upstream that is mentioned on their documentation site (http://hg.rafaelmartins.eng.br/ownpaste/), could not even be found in DNS.

The fact that the last release is from 2012 makes it even more dead than sticky-notes, which had its last git push in February 2015.

True, that's exactly why I imported the last release from pypi to github, in case it disappears from there too (I was planing to add some features anyway).

Sorry, I had not seen that reference. Could you send me a link to the (new) "upstream" location?

You should be able to ssh in as root@209.132.184.146 with the SSH key in your FAS account.

Let us know if we can help with anything else.

So, I think our best bet here might be modernpaste. ( https://github.com/LINKIWI/modern-paste )

It will definitely need some packaging work (there's no actual upstream release and upstream uses git and pip and such). But it's in flask and python (mostly) and has most of the features we want.

So I think we have a test modernpaste now...

Please open a new ticket for RFR on modernpaste when it's ready to go.

Metadata