tachikoma 2.1.3 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +1 -5
- data/NOTE.txt +0 -1
- data/README.md +13 -40
- data/bin/tachikoma +1 -2
- data/lib/tachikoma/settings.rb +6 -3
- data/lib/tachikoma/version.rb +1 -1
- data/lib/tasks/app.rake +1 -15
- data/tachikoma.gemspec +1 -1
- metadata +2 -3
- data/Gemfile.lock +0 -38
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 959855b32d57d8fc65b695bbe828aebdb721d7dd
|
4
|
+
data.tar.gz: d87489d289f3f15d46865ce921654fc932269a65
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2db323e982a2e86c168eeaaf854f28d942ff0c61a1f18bb0fb2cbe03b7468ef73fbfd4183984b653e68003b5e97fd0b495b369f82cf9aa9c909ef1f17e9931bc
|
7
|
+
data.tar.gz: 4b5d8134ff072bbb2019f79746abbc3c5b671faf3aaa29b0a853296257e499704668008a34d36889ac91a6cfda0744410bca968597408297fc802775196497e9
|
data/.gitignore
CHANGED
@@ -3,8 +3,7 @@
|
|
3
3
|
.bundle
|
4
4
|
.config
|
5
5
|
.yardoc
|
6
|
-
|
7
|
-
# Gemfile.lock
|
6
|
+
/Gemfile.lock
|
8
7
|
InstalledFiles
|
9
8
|
_yardoc
|
10
9
|
coverage
|
@@ -17,8 +16,5 @@ test/tmp
|
|
17
16
|
test/version_tmp
|
18
17
|
tmp
|
19
18
|
|
20
|
-
# Ignore checkout repos
|
21
|
-
/repos/
|
22
|
-
|
23
19
|
$ Ignore dotenv setting
|
24
20
|
/.env
|
data/NOTE.txt
CHANGED
data/README.md
CHANGED
@@ -2,47 +2,9 @@
|
|
2
2
|
|
3
3
|
Daily Pull Requester with bundle update
|
4
4
|
|
5
|
-
##
|
5
|
+
## Usage as gem
|
6
6
|
|
7
|
-
|
8
|
-
2. Add YAML of repository you want to build by Tachikoma: Copy `data/fenix-knight.yaml` then edit `url` and `type`. Change `url` to clone URL of your repository. Change `type` to `shared`.
|
9
|
-
3. Run below command in your shell:
|
10
|
-
|
11
|
-
```
|
12
|
-
$ mkdir -p repos
|
13
|
-
$ export BUILD_FOR=<your-repository-name-that-is-same-to-yaml-filename>
|
14
|
-
$ export TOKEN_YOUR_REPOSITORY_NAME_THAT_IS_SAME_TO_YAML_FILENAME=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
15
|
-
$ bundle exec rake tachikoma:load tachikoma:fetch tachikoma:bundle tachikoma:pull_request
|
16
|
-
```
|
17
|
-
|
18
|
-
## Collaborate with private YAML data
|
19
|
-
|
20
|
-
Tachikoma uses `./data` as a default data directory that stores YAML setting files.
|
21
|
-
|
22
|
-
To locate other data directory, set `LOCAL_DATA_PATH` and `LOCAL_DATA_REMOTE_URL` environment variables.
|
23
|
-
|
24
|
-
* `LOCAL_DATA_PATH`: data directory/location of YAML files. relative/absolute path also ok.
|
25
|
-
* `LOCAL_DATA_REMOTE_URL`: git clone URL of your data repository. typically HTTPS for public repo, SSH for private repo.
|
26
|
-
|
27
|
-
```
|
28
|
-
$ export LOCAL_DATA_PATH=<local-data-path>
|
29
|
-
$ export LOCAL_DATA_REMOTE_URL=<git-clone-url-of-your-public-or-private-data-repository>
|
30
|
-
$ bundle exec rake tachikoma:fetch_data
|
31
|
-
```
|
32
|
-
|
33
|
-
To work with other tasks, just put other tasks after `tachikoma:fetch_data`.
|
34
|
-
|
35
|
-
NOTE: other environment variables such as `BUILD_FOR` are also required
|
36
|
-
|
37
|
-
```
|
38
|
-
$ bundle exec rake tachikoma:fetch_data tachikoma:load tachikoma:fetch tachikoma:bundle tachikoma:pull_request
|
39
|
-
```
|
40
|
-
|
41
|
-
## Usage as gem (experimental)
|
42
|
-
|
43
|
-
Above description is _inside_ tachikoma, below is usage not _inside_ but _outside_ tachikoma, as gem.
|
44
|
-
|
45
|
-
https://github.com/sanemat/bot-motoko-tachikoma
|
7
|
+
see: https://github.com/sanemat/bot-motoko-tachikoma
|
46
8
|
|
47
9
|
```
|
48
10
|
$ mkdir -p my-tachikoma
|
@@ -52,6 +14,17 @@ $ echo "gem 'tachikoma'" >> Gemfile
|
|
52
14
|
$ bundle
|
53
15
|
$ bundle exec tachikoma init
|
54
16
|
```
|
17
|
+
### Write repository information
|
18
|
+
|
19
|
+
1. Get GitHub OAuth2 token: See [Creating an OAuth token for command-line use](https://help.github.com/articles/creating-an-oauth-token-for-command-line-use)
|
20
|
+
2. Add YAML of repository you want to build by Tachikoma: Copy `data/bot-motoko-tachikoma.yaml` then edit `url` and `type`. to clone URL of your repository. Change `type` to `shared`, if you use shared repository model.
|
21
|
+
3. Run below command in your shell:
|
22
|
+
|
23
|
+
```
|
24
|
+
$ export BUILD_FOR=<your-repository-name-that-is-same-to-yaml-filename>
|
25
|
+
$ export TOKEN_YOUR_REPOSITORY_NAME_THAT_IS_SAME_TO_YAML_FILENAME=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
26
|
+
$ bundle exec rake tachikoma:load tachikoma:fetch tachikoma:bundle tachikoma:pull_request
|
27
|
+
```
|
55
28
|
|
56
29
|
## Contributing
|
57
30
|
|
data/bin/tachikoma
CHANGED
@@ -11,12 +11,11 @@ when 'init'
|
|
11
11
|
File.open('Rakefile', 'a') do |f|
|
12
12
|
f << <<-EOS
|
13
13
|
require 'bundler/setup'
|
14
|
-
require 'tachikoma'
|
15
14
|
require 'tachikoma/tasks'
|
16
15
|
EOS
|
17
16
|
end
|
18
17
|
FileUtils.mkdir_p('data')
|
19
|
-
File.open(File.join('data', '
|
18
|
+
File.open(File.join('data', 'bot-motoko-tachikoma.yaml'), 'w') do |f|
|
20
19
|
f << <<-EOS
|
21
20
|
url:
|
22
21
|
'https://github.com/sanemat/bot-motoko-tachikoma.git'
|
data/lib/tachikoma/settings.rb
CHANGED
@@ -1,24 +1,27 @@
|
|
1
1
|
require 'pathname'
|
2
2
|
|
3
3
|
module Tachikoma
|
4
|
+
# ~/users-tachikoma-dir
|
4
5
|
def self.root_path
|
5
|
-
@root_path ||= Pathname.new(
|
6
|
+
@root_path ||= Pathname.new(Dir.pwd)
|
6
7
|
end
|
7
8
|
|
8
9
|
def self.root_path=(root_path)
|
9
10
|
@root_path = Pathname.new File.expand_path(root_path)
|
10
11
|
end
|
11
12
|
|
13
|
+
# ~/users-tachikoma-dir/data
|
12
14
|
def self.data_path
|
13
|
-
@data_path ||= root_path.
|
15
|
+
@data_path ||= root_path.join('data')
|
14
16
|
end
|
15
17
|
|
16
18
|
def self.data_path=(data_path)
|
17
19
|
@data_path = Pathname.new File.expand_path(data_path)
|
18
20
|
end
|
19
21
|
|
22
|
+
# ~/users-tachikoma-dir/repos
|
20
23
|
def self.repos_path
|
21
|
-
@repos_path ||= root_path.
|
24
|
+
@repos_path ||= root_path.join('repos')
|
22
25
|
end
|
23
26
|
|
24
27
|
def self.repos_path=(repos_path)
|
data/lib/tachikoma/version.rb
CHANGED
data/lib/tasks/app.rake
CHANGED
@@ -43,27 +43,13 @@ namespace :tachikoma do
|
|
43
43
|
end
|
44
44
|
end
|
45
45
|
|
46
|
-
desc 'fetch another `/data` directory from another location'
|
47
|
-
task :fetch_data do
|
48
|
-
if ENV['LOCAL_DATA_PATH'] && ENV['LOCAL_DATA_REMOTE_URL']
|
49
|
-
raise "local data path is empty" if ENV['LOCAL_DATA_PATH'] == ''
|
50
|
-
raise "remote git repository of local data is empty" if ENV['LOCAL_DATA_REMOTE_URL'] == ''
|
51
|
-
Tachikoma.data_path = File.absolute_path(ENV['LOCAL_DATA_PATH'])
|
52
|
-
rm_rf(Tachikoma.data_path) if Dir.exists?(Tachikoma.data_path)
|
53
|
-
sh "git clone #{ENV['LOCAL_DATA_REMOTE_URL']} #{Tachikoma.data_path}"
|
54
|
-
raise "failed to clone remote repo: perhaps wrong git clone URL? #{ENV['LOCAL_DATA_REMOTE_URL']}" unless $?.success?
|
55
|
-
else
|
56
|
-
warn "`fetch_data` task requires LOCAL_DATA_PATH and LOCAL_DATA_REMOTE_URL environment variables"
|
57
|
-
end
|
58
|
-
end
|
59
|
-
|
60
46
|
task :load do
|
61
47
|
@build_for = ENV['BUILD_FOR']
|
62
48
|
@github_token = ENV[github_token_key(@build_for)]
|
63
49
|
@git_name = 'bot-motoko'
|
64
50
|
@git_email = 'bot-motoko@al.sane.jp'
|
65
51
|
@configure =
|
66
|
-
YAML.
|
52
|
+
YAML.safe_load_file(File.join(Tachikoma.data_path, "#{@build_for}.yaml"))
|
67
53
|
@fetch_url = @configure['url']
|
68
54
|
@base_remote_branch = 'origin/master'
|
69
55
|
@authorized_url = authorized_url_with_type(@fetch_url, @configure['type'], @github_token, @git_name)
|
data/tachikoma.gemspec
CHANGED
@@ -13,7 +13,7 @@ Gem::Specification.new do |spec|
|
|
13
13
|
spec.homepage = "https://github.com/sanemat/tachikoma"
|
14
14
|
spec.license = "MIT"
|
15
15
|
|
16
|
-
spec.files = `git ls-files
|
16
|
+
spec.files = `git ls-files`.split($/)
|
17
17
|
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
18
18
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
19
|
spec.require_paths = ["lib"]
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tachikoma
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 3.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- sanemat
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-07-
|
11
|
+
date: 2013-07-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: httparty
|
@@ -105,7 +105,6 @@ files:
|
|
105
105
|
- .env.example
|
106
106
|
- .gitignore
|
107
107
|
- Gemfile
|
108
|
-
- Gemfile.lock
|
109
108
|
- LICENSE.txt
|
110
109
|
- NOTE.txt
|
111
110
|
- README.md
|
data/Gemfile.lock
DELETED
@@ -1,38 +0,0 @@
|
|
1
|
-
PATH
|
2
|
-
remote: .
|
3
|
-
specs:
|
4
|
-
tachikoma (2.1.3)
|
5
|
-
httparty
|
6
|
-
multi_json
|
7
|
-
rake
|
8
|
-
safe_yaml
|
9
|
-
|
10
|
-
GEM
|
11
|
-
remote: https://rubygems.org/
|
12
|
-
specs:
|
13
|
-
coderay (1.0.9)
|
14
|
-
dotenv (0.8.0)
|
15
|
-
httparty (0.11.0)
|
16
|
-
multi_json (~> 1.0)
|
17
|
-
multi_xml (>= 0.5.2)
|
18
|
-
method_source (0.8.1)
|
19
|
-
multi_json (1.7.7)
|
20
|
-
multi_xml (0.5.4)
|
21
|
-
oj (2.1.2)
|
22
|
-
pry (0.9.12.2)
|
23
|
-
coderay (~> 1.0.5)
|
24
|
-
method_source (~> 0.8)
|
25
|
-
slop (~> 3.4)
|
26
|
-
rake (10.1.0)
|
27
|
-
safe_yaml (0.9.3)
|
28
|
-
slop (3.4.5)
|
29
|
-
|
30
|
-
PLATFORMS
|
31
|
-
ruby
|
32
|
-
|
33
|
-
DEPENDENCIES
|
34
|
-
bundler (~> 1.3)
|
35
|
-
dotenv
|
36
|
-
oj
|
37
|
-
pry
|
38
|
-
tachikoma!
|