apeworx / ape-template Goto Github PK
View Code? Open in Web Editor NEWPlugin for working with Cookiecutter-based project templates
License: Apache License 2.0
Plugin for working with Cookiecutter-based project templates
License: Apache License 2.0
Create a custom CLI plugin for using Click with Cookiecutter.
We want a cli command to install git repos to install templates of projects
ape template git_repo_name
Testing:
It is important that it stays as a 2nd class so it will not break ape core.
it is to let the new users be able to clone, compile, and deploy a simple project.
Ape-Template aim is to make it seamless and easy to make a project from start to finish.
That is why it need to be able to git clone, install plugins, compile, test, and deploy
It is dependent on ape plugins install plugins_rec
which is a new feature coming to this to make it better
Related feature to include:
ApeWorX/ape#729
ape_template/_cli.py:2: error: Skipping analyzing "cookiecutter.cli": module is installed, but missing library stubs or py.typed marker
https://mypy.readthedocs.io/en/stable/running_mypy.html#missing-library-stubs-or-py-typed-marker
ape
and plugin versions:$ ape --version
0.6.11
$ ape plugins list
Installed Plugins:
ens 0.6.1
vyper 0.6.8
solidity 0.6.6
etherscan 0.6.7
infura 0.6.2
template 0.6.1
hardhat 0.6.9
alchemy 0.6.2
foundry 0.6.11
tokens 0.6.1
# ...copy and paste result of above command here...
Problem:
~/contracts$ ape template [email protected]:ApeAcademy/ERC721.git
The authenticity of host 'github.com (192.30.255.112)' can't be established.
ED25519 key fingerprint is SHA256:+DiY3wvvV6TuJJhbpZisF/zLDA0zPMSvHdkr4UvCOqU.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])? y
Please type 'yes', 'no' or the fingerprint: y
Please type 'yes', 'no' or the fingerprint: yes
ERROR: git clone failed with error: Cloning into 'ERC721'...
Warning: Permanently added 'github.com' (ED25519) to the list of known hosts.
[email protected]: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
Traceback (most recent call last):
File "/home/snar/.local/bin/ape", line 8, in
sys.exit(cli())
File "/home/snar/.local/lib/python3.10/site-packages/click/core.py", line 1130, in call
return self.main(*args, **kwargs)
File "/home/snar/.local/lib/python3.10/site-packages/click/core.py", line 1055, in main
rv = self.invoke(ctx)
File "/home/snar/.local/lib/python3.10/site-packages/ape/_cli.py", line 36, in invoke
return super().invoke(ctx)
File "/home/snar/.local/lib/python3.10/site-packages/click/core.py", line 1657, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/home/snar/.local/lib/python3.10/site-packages/click/core.py", line 1404, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/home/snar/.local/lib/python3.10/site-packages/click/core.py", line 760, in invoke
return __callback(*args, **kwargs)
File "/home/snar/.local/lib/python3.10/site-packages/cookiecutter/cli.py", line 194, in main
cookiecutter(
File "/home/snar/.local/lib/python3.10/site-packages/cookiecutter/main.py", line 69, in cookiecutter
repo_dir, cleanup = determine_repo_dir(
File "/home/snar/.local/lib/python3.10/site-packages/cookiecutter/repository.py", line 106, in determine_repo_dir
cloned_repo = clone(
File "/home/snar/.local/lib/python3.10/site-packages/cookiecutter/vcs.py", line 95, in clone
subprocess.check_output( # nosec
File "/usr/lib/python3.10/subprocess.py", line 420, in check_output
return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
File "/usr/lib/python3.10/subprocess.py", line 524, in run
raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['git', 'clone', '[email protected]:ApeAcademy/ERC721.git']' returned non-zero exit status 128.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.