Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New ringo-admin #435

Merged
merged 26 commits into from
Jan 12, 2022
Merged

New ringo-admin #435

merged 26 commits into from
Jan 12, 2022

Conversation

grob
Copy link
Member

@grob grob commented Aug 15, 2021

#434 Improves ringo-admin

install command:

  • accepts only URLs (with the exception of <github owner>/<github repo>)
  • is capable of installing tar/tar.gz/tgz/zip archive URLs (http(s) scheme only)
  • clones git repositories using schemes git, git+ssh, ssh, git+http(s) and git+file schemes plus GitHub URLs (this is using git via Java's ProcessBuilder, so naturally git has to be installed and contained in PATH)
  • allows specifying a tree-ish option as URL hash (i.e. https://github.com/ringo/ringojs#ringo-admin) to clone/checkout a specific branch, tag or commit. Repositories are copied into the packages directory without .git directory.
  • recurses into dependencies of installed package(s), unless option -n/--no-deps is specified
  • installs packages either in a packages directory beneath the current one, the closest parent directory containing a package.json file, or in the "global" ringo packages directory (-g/--global)
  • optionally saves installed packages in local package.json (-s/--save)

The functionality of the create command hasn't changed, but the app skeleton has been modernized to use stick and reinhardt packages (see #359). Note that it's currently using stick v1.0 branch resp. reinhardt's es6 branch, which should probably change once these branches are released.

Both commands log fairly verbose into <ringo-home>/.ringo-admin.log.

Overall ringo-admin has a cleaner structure now, which should ease adding additional commands in the future

Please note that this has only been tested on my local mac. There are some unit tests covering the most basic (and important) methods, but i'm still trying to find a sane way of producing integration tests.

grob added 25 commits August 14, 2021 09:11
ringo-admin install is now capable to install packages by url (tar/zip archives or git repositories)
it requires a confirmation before creating the application directory, and
resolves app skeleton dependencies
zip archive without a base path returned ".", while tar archives returned an empty string
both create and install commands now support `help <command>`, `<command> -h` and `<command> --help`
they are still logged into <ringo-home>.ringo-admin.log, but don't pollute the test console output
…these will be logged into .ringo-admin.log anyway)
git+file is only used to distinguish between archive and repository file urls
@grob grob requested a review from botic August 16, 2021 13:43
@grob grob added this to the 3.0.0 milestone Oct 21, 2021
Copy link
Member

@botic botic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great for 3.x!

@botic botic merged commit 934f9cc into master Jan 12, 2022
@botic botic deleted the ringo-admin branch January 12, 2022 13:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants