123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- #### releasinator config ####
- configatron.product_name = "PayPal node SDK"
- # List of items to confirm from the person releasing. Required, but empty list is ok.
- configatron.prerelease_checklist_items = [
- "Sanity check the master branch.",
- "Unit tests passed."
- ]
- def validate_version_match()
- if 'v'+package_version() != @current_release.version
- Printer.fail("Package.json version #{package_version} does not match changelog version #{@current_release.version}.")
- abort()
- end
- Printer.success("Package.json version #{package_version} matches latest changelog version #{@current_release.version}.")
- end
- def validate_paths
- @validator.validate_in_path("grunt")
- @validator.validate_in_path("npm")
- @validator.validate_in_path("jq")
- end
- configatron.custom_validation_methods = [
- method(:validate_paths),
- method(:validate_version_match)
- ]
- def build_method
- CommandProcessor.command("npm test", live_output=true)
- end
- # The command that builds the sdk. Required.
- configatron.build_method = method(:build_method)
- def publish_to_package_manager(version)
- CommandProcessor.command("npm publish .")
- end
- # The method that publishes the sdk to the package manager. Required.
- configatron.publish_to_package_manager_method = method(:publish_to_package_manager)
- def wait_for_package_manager(version)
- CommandProcessor.wait_for("wget -U \"non-empty-user-agent\" -qO- https://registry.npmjs.org/paypal-rest-sdk | jq '.[\"dist-tags\"][\"latest\"]' | grep #{package_version} | cat")
- end
- # The method that waits for the package manager to be done. Required
- configatron.wait_for_package_manager_method = method(:wait_for_package_manager)
- # Whether to publish the root repo to GitHub. Required.
- configatron.release_to_github = true
- def package_version()
- File.open("Package.json", 'r') do |f|
- f.each_line do |line|
- if line.match (/\"version\": \"\d*\.\d*\.\d*\"/)
- return line.strip.split(':')[1].strip.split('"')[1]
- end
- end
- end
- end
|