fastlane-plugin-apprepo 0.1.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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 918bdc19bdae67a2c396557c71bcaaf6cde63c25
4
+ data.tar.gz: d226c46f604c1f7a49a97c561916c5866cf8af90
5
+ SHA512:
6
+ metadata.gz: 5c404d4f062dcdc5b5dc70cbf9e0f8665490d38c531bb560f044ebbef083fb69696bbcd267620ef29cb5d3929aeade5759a3c389e064a937fac659b334b239e5
7
+ data.tar.gz: b1591aced1d1141650dd1a947012564473cf71549bc5c6af63e63bd2654bd7c690a18636c3d293412c7037a8ee3e998354ed3c8d4bc7d7af38eea3720d698488
data/Gemfile ADDED
@@ -0,0 +1,5 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gem 'json'
4
+
5
+ gemspec
data/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2016 fastlane
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,7 @@
1
+ [![Twitter: @igraczech](https://img.shields.io/badge/contact-%40igraczech-green.svg?style=flat)](https://twitter.com/igraczech)
2
+ [![License](https://img.shields.io/badge/license-MIT-green.svg?style=flat)](https://github.com/suculent/fastlane-plugin-apprepo/blob/master/LICENSE)
3
+ [![Gem](https://img.shields.io/gem/v/fastlane-plugin-apprepo.svg?style=flat)](http://rubygems.org/gems/fastlane-plugin-apprepo)
4
+ [![Build Status](https://img.shields.io/circleci/project/suculent/fastlane-plugin-apprepo.svg?style=flat)](https://circleci.com/gh/suculent/fastlane-plugin-apprepo)
5
+
6
+ An experimental fastlane plugin
7
+
data/circle.yml ADDED
@@ -0,0 +1,28 @@
1
+ machine:
2
+ ruby:
3
+ version: 2.2.5
4
+
5
+ #machine:
6
+ # xcode:
7
+ # version: "7.3"
8
+
9
+ dependencies:
10
+ pre:
11
+ - gem install bundler
12
+ - gem install fastlane
13
+ - bundle update
14
+
15
+ override:
16
+ - bundle install: # note ':' here
17
+ timeout: 180 # fail if command has no output for 3 minutes
18
+
19
+ #test:
20
+ # override:
21
+ # - ruby ./lib/apprepo.rb run
22
+ # - ruby ./lib/apprepo.rb run --ipa ./sampleapp.ipa
23
+ # - RAILS_ENV=test bundle exec rspec -r rspec_junit_formatter --format RspecJunitFormatter -o $CIRCLE_TEST_REPORTS/rspec/junit.xml
24
+
25
+ ## Custom notifications
26
+ notify:
27
+ webhooks:
28
+ - url: https://hooks.slack.com/services/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?payload={"text":"<https://slack.com>"}
@@ -0,0 +1,24 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+
5
+ require 'fastlane/plugin/apprepo/version'
6
+
7
+ Gem::Specification.new do |spec|
8
+ spec.name = 'fastlane-plugin-apprepo'
9
+ spec.version = Fastlane::Apprepo::VERSION
10
+ spec.authors = ['Matej Sychra']
11
+ spec.email = ['suculent@me.com']
12
+ spec.summary = Fastlane::Apprepo::SUMMARY
13
+ spec.description = Fastlane::Apprepo::DESCRIPTION
14
+ spec.homepage = 'https://github.com/suculent/fastlane-plugin-apprepo'
15
+ spec.license = 'MIT'
16
+
17
+ spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
18
+ spec.require_paths = ['lib']
19
+
20
+ spec.add_development_dependency 'json', '= 1.8.1'
21
+ spec.add_development_dependency 'rspec', '~> 3.4', '>= 3.4.0'
22
+ spec.add_development_dependency 'fastlane', '~> 1.89'
23
+ spec.add_development_dependency 'pry', '~> 0'
24
+ end
@@ -0,0 +1,17 @@
1
+ #require_relative 'apprepo/version'
2
+ require 'fastlane/plugin/apprepo/version'
3
+
4
+ module Fastlane
5
+ module Apprepo
6
+ # Return all .rb files inside the "actions" and "helper" directory
7
+ def self.all_classes
8
+ Dir[File.expand_path('*/{actions,helper}/*.rb', File.dirname(__FILE__))]
9
+ end
10
+ end
11
+ end
12
+
13
+ # By default we want to import all available actions and helpers
14
+ # A plugin can contain any number of actions and plugins
15
+ Fastlane::Apprepo.all_classes.each do |current|
16
+ require current
17
+ end
@@ -0,0 +1,127 @@
1
+ require 'fastlane'
2
+
3
+ module Fastlane
4
+ module Actions
5
+ class ApprepoAction < Action
6
+ def self.run(params)
7
+ require 'apprepo'
8
+
9
+ if defined?(::Apprepo::Command::Make)
10
+
11
+ # New `apprepo make` command
12
+ ::Apprepo::Command::Make.run
13
+
14
+ else
15
+
16
+ # Legacy `apprepo` command
17
+ ::Apprepo::Command.run
18
+ end
19
+ end
20
+
21
+ def self.description
22
+ "Runs `apprepo` for the project"
23
+ end
24
+
25
+ def self.available_options
26
+ [
27
+ FastlaneCore::ConfigItem.new(key: :ipa,
28
+ short_option: '-i',
29
+ optional: true,
30
+ env_name: 'APPREPO_IPA_PATH',
31
+ description: 'Path to your ipa file',
32
+ default_value: Dir['*.ipa'].first,
33
+ verify_block: proc do |value|
34
+ UI.user_error!("Could not find ipa file at path '#{value}'") unless File.exist?(value)
35
+ UI.user_error!("'#{value}' doesn't seem to be an ipa file") unless value.end_with?('.ipa')
36
+ end,
37
+ conflicting_options: [:pkg],
38
+ conflict_block: proc do |value|
39
+ UI.user_error!("You can't use 'ipa' and '#{value.key}' options in one run.")
40
+ end),
41
+ FastlaneCore::ConfigItem.new(key: :app_identifier,
42
+ short_option: '-b',
43
+ optional: false,
44
+ env_name: 'APPREPO_APP_ID',
45
+ description: 'Your bundle identifier',
46
+ default_value: ""),
47
+ FastlaneCore::ConfigItem.new(key: :app_code,
48
+ short_option: '-c',
49
+ optional: true,
50
+ env_name: 'APPREPO_APPCODE',
51
+ description: 'APPCODE value for apprepo'),
52
+ FastlaneCore::ConfigItem.new(key: :repo_url,
53
+ short_option: '-r',
54
+ optional: false,
55
+ env_name: 'APPREPO_URL',
56
+ description: 'URL of your Apprepo server'),
57
+ FastlaneCore::ConfigItem.new(key: :repo_user,
58
+ short_option: '-u',
59
+ optional: false,
60
+ env_name: 'APPREPO_USER',
61
+ description: 'USER of your Apprepo server'),
62
+ FastlaneCore::ConfigItem.new(key: :repo_key,
63
+ short_option: '-k',
64
+ optional: false,
65
+ env_name: 'APPREPO_KEY',
66
+ description: 'RSA key for your Apprepo server'),
67
+ FastlaneCore::ConfigItem.new(key: :repo_description,
68
+ short_option: '-d',
69
+ optional: true,
70
+ env_name: 'APPREPO_DESCRIPTION',
71
+ description: 'Long description for your Apprepo server'),
72
+ FastlaneCore::ConfigItem.new(key: :metadata_path,
73
+ short_option: '-m',
74
+ description: 'Path to the folder containing the metadata files',
75
+ optional: true),
76
+ FastlaneCore::ConfigItem.new(key: :meta_title,
77
+ short_option: '-a',
78
+ description: 'Name of the app',
79
+ optional: true),
80
+ FastlaneCore::ConfigItem.new(key: :skip_binary_upload,
81
+ description: 'Skip uploading an ipa or pkg to iTunes Connect',
82
+ is_string: false,
83
+ default_value: false),
84
+ FastlaneCore::ConfigItem.new(key: :app_version,
85
+ short_option: '-z',
86
+ description: 'The version that should be edited or created',
87
+ optional: true),
88
+ FastlaneCore::ConfigItem.new(key: :skip_metadata,
89
+ description: "Don't upload the metadata (e.g. title, description), this will still upload screenshots",
90
+ is_string: false,
91
+ default_value: false),
92
+ FastlaneCore::ConfigItem.new(key: :notify,
93
+ description: "Notify AppRepo users on update",
94
+ is_string: false,
95
+ default_value: false),
96
+ FastlaneCore::ConfigItem.new(key: :build_number,
97
+ short_option: '-n',
98
+ description: 'If set the given build number (already uploaded to iTC) will be used instead of the current built one',
99
+ optional: true,
100
+ conflicting_options: [:ipa, :pkg],
101
+ conflict_block: proc do |value|
102
+ UI.user_error!("You can't use 'build_number' and '#{value.key}' options in one run.")
103
+ end),
104
+
105
+ # App Metadata
106
+ # Non Localised
107
+ FastlaneCore::ConfigItem.new(key: :app_icon,
108
+ description: 'Metadata: The path to the app icon',
109
+ optional: true,
110
+ short_option: '-l',
111
+ verify_block: proc do |value|
112
+ UI.user_error!("Could not find png file at path '#{value}'") unless File.exist?(value)
113
+ UI.user_error!("'#{value}' doesn't seem to be a png file") unless value.end_with?('.png')
114
+ end)
115
+ ]
116
+ end
117
+
118
+ def self.is_supported?(platform)
119
+ [:ios, :mac].include? platform
120
+ end
121
+
122
+ def self.authors
123
+ ["suculent"]
124
+ end
125
+ end
126
+ end
127
+ end
@@ -0,0 +1,7 @@
1
+ module Fastlane
2
+ module Apprepo
3
+ VERSION = '0.1.0'
4
+ SUMMARY = 'experimental fastlane plugin'
5
+ DESCRIPTION = 'experimental fastlane plugin based on https://github.com/suculent/apprepo SFTP uploader'
6
+ end
7
+ end
metadata ADDED
@@ -0,0 +1,116 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: fastlane-plugin-apprepo
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Matej Sychra
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2016-05-24 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: json
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '='
18
+ - !ruby/object:Gem::Version
19
+ version: 1.8.1
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '='
25
+ - !ruby/object:Gem::Version
26
+ version: 1.8.1
27
+ - !ruby/object:Gem::Dependency
28
+ name: rspec
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '3.4'
34
+ - - ">="
35
+ - !ruby/object:Gem::Version
36
+ version: 3.4.0
37
+ type: :development
38
+ prerelease: false
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - "~>"
42
+ - !ruby/object:Gem::Version
43
+ version: '3.4'
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: 3.4.0
47
+ - !ruby/object:Gem::Dependency
48
+ name: fastlane
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '1.89'
54
+ type: :development
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: '1.89'
61
+ - !ruby/object:Gem::Dependency
62
+ name: pry
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '0'
68
+ type: :development
69
+ prerelease: false
70
+ version_requirements: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - "~>"
73
+ - !ruby/object:Gem::Version
74
+ version: '0'
75
+ description: experimental fastlane plugin based on https://github.com/suculent/apprepo
76
+ SFTP uploader
77
+ email:
78
+ - suculent@me.com
79
+ executables: []
80
+ extensions: []
81
+ extra_rdoc_files: []
82
+ files:
83
+ - Gemfile
84
+ - LICENSE
85
+ - README.md
86
+ - circle.yml
87
+ - fastlane-plugin-apprepo.gemspec
88
+ - lib/fastlane/plugin/apprepo.rb
89
+ - lib/fastlane/plugin/apprepo/actions/apprepo_action.rb
90
+ - lib/fastlane/plugin/apprepo/version.rb
91
+ homepage: https://github.com/suculent/fastlane-plugin-apprepo
92
+ licenses:
93
+ - MIT
94
+ metadata: {}
95
+ post_install_message:
96
+ rdoc_options: []
97
+ require_paths:
98
+ - lib
99
+ required_ruby_version: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ required_rubygems_version: !ruby/object:Gem::Requirement
105
+ requirements:
106
+ - - ">="
107
+ - !ruby/object:Gem::Version
108
+ version: '0'
109
+ requirements: []
110
+ rubyforge_project:
111
+ rubygems_version: 2.6.1
112
+ signing_key:
113
+ specification_version: 4
114
+ summary: experimental fastlane plugin
115
+ test_files: []
116
+ has_rdoc: