0
1

More than 5 years have passed since last update.

GitHubの草を自動栽培する

Last updated at Posted at 2019-07-11

Twitter でタイムラインを眺めていると 「草生やして転職。」 なんていうふざけた広告が流れてくるので、なら自動栽培してやろうと思い立った。

Tools

  • GitHub
  • Travis CI

Overview

とても簡単で毎日 Travis CI を動かして、ファイルいじって、 GitHub にプッシュするだけです。

travisci-githubのコピー.png

Config

Travis CI に設定する必要がある項目を紹介する

Cron Jobs

毎日実行されるように設定するだけ

スクリーンショット 2019-07-11 19.25.34.png

Environment Variables

GitHub の Personal Access Token を使う

USER_TOKEN にトークンをセットすると完了

travis env set USER_TOKEN the-generated-token --private -r tanjo/saibai

または Travis CI のサイトで設定できる

スクリーンショット 2019-07-11 19.25.18.png

Code

Travis CI の TRAVIS_EVENT_TYPEcron の時にファイルを更新して GitHub へ push する。

イベントタイプによる判断をしているので cron 以外のジョブでは GitHub への push が実行されることはありません。

tanjo/saibai はダミーリポジトリ名で存在しません。

.travis.yml
language: ruby
rvm: 2.6.2
before_install:
- gem install bundler:2.0.1
script:
  - |
    if [ $TRAVIS_EVENT_TYPE = cron ]; then
      echo -e "machine github.com\n  login $USER_TOKEN" >> ~/.netrc
      git clone --branch develop --depth 1 https://github.com/tanjo/saibai.git
      pushd saibai
      git config user.name "tanjo"
      git config user.email "tanjo@users.noreply.github.com"
      echo `date` > .updated
      git commit -m "Update .updated"
      git push origin develop
      popd
    fi
branches:
  only:
  - develop

Result

約1年くらい栽培した結果がこちらです。

スクリーンショット 2019-07-11 19.43.56.png

丹精込めた日ほど色濃く育ちます。

他にどうやらまとめてやる方法があるらしいですが、日々の努力をアピールするため毎日 push しました。

ちなみに、こういった使い方は推奨されないためオススメはしません。

Travis CI で develop ビルドから master へ自動 push がしたい等の参考にしてください。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1