riff-raff

The Guardian's deployment platform

  • 所有者: guardian/riff-raff
  • 平台:
  • 許可證: Apache License 2.0
  • 分類:
  • 主題:
  • 喜歡:
    0
      比較:

Github星跟蹤圖

Riff-Raff

"Deploy the transit beam"

About

The Guardian's scala-based deployment system is designed to automate deploys by providing a web application that
performs and records deploys, as well as providing various integration points for automating deployment pipelines.

Requirements

Riff-Raff and Magenta have been built with the tools we use at the Guardian
and you will find it easiest if you use a similar set of tools. Riff-Raff:

  • relies on artifacts and riff-raff.yaml files describing builds being in S3 buckets with the artifacts having paths of
    the form project-name/build-number
  • uses the AWS SDK and Prism to do resource discovery
  • stores configuration, history and logs in a PostgreSQL database and a handful of DynamoDB tables (the eventual aim is to ditch DynamoDB altogether)

Documentation

The documentation is available in the application (under the Documentation menu) but can also be viewed under
riff-raff/app/docs in github.

In action

Screenshots don't do a lot to show how Riff-Raff works in practice - but here are
a handful anyway, just to give a hint.


Deploy history
The deploy history view - this shows all deploys that have ever been done (in this case filtered on PROD and projects containing 'mobile')


Deploy log
This is what a single deploy looks like - displaying the overall result and the list of tasks that were executed.


Request a deploy
The simple form for requesting a deploy can be seen here (further options are available after previewing)


Continuous deployment configuration
Riff-Raff polls our build server frequently and can be configured to automatically start a deploy for newly completed builds

How do I run Riff-Raff locally if I want to hack on it?

Assuming you have a reasonably recent version of Java installed,

  • Create a basic configuration file at ~/.gu/riff-raff.conf (S3 and postgres config is probably the minimum)
  • Run ./script/start from the project root
  • visit http://localhost:9000/
  • Details of how to configure Riff-Raff can then be found at http://localhost:9000/docs/riffraff/properties

What is still left to do?

See the TODO.txt file in this project

主要指標

概覽
名稱與所有者guardian/riff-raff
主編程語言Scala
編程語言Scala (語言數: 8)
平台
許可證Apache License 2.0
所有者活动
創建於2011-08-19 09:05:26
推送於2025-05-02 09:44:23
最后一次提交
發布數81
最新版本名稱build-2360 (發布於 2022-10-03 21:57:19)
第一版名稱build-1831 (發布於 2022-01-04 14:08:14)
用户参与
星數266
關注者數84
派生數18
提交數3.9k
已啟用問題?
問題數71
打開的問題數16
拉請求數1205
打開的拉請求數1
關閉的拉請求數149
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?