Skip to content

Commit

Permalink
Fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
cryptobench committed Nov 26, 2024
1 parent 2a265b8 commit 1b4dc7c
Show file tree
Hide file tree
Showing 2 changed files with 62 additions and 1 deletion.
61 changes: 61 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
# Golem Certificate Companion

A user-friendly command-line tool that simplifies outbound networking setup on the Golem Network. Instead of manually managing certificates, keys, and descriptors, this tool guides you through a simple interactive process to generate all required files.

## Overview

Setting up outbound networking on Golem traditionally requires multiple manual steps including key generation, certificate creation, and descriptor signing. The Golem Certificate Companion automates this entire process, handling all the cryptographic operations behind the scenes.

With a single command and a few simple prompts, you can:
- Generate all required cryptographic keys
- Create and sign your certificates
- Configure outbound access (unrestricted or URL whitelist)
- Generate a properly signed node descriptor

## Installation

```bash
pip install golem-cert-companion
```

## Quick Start

1. Run the tool:
```bash
golem-cert-companion
```

2. Answer a few simple questions:
- Your name and email
- Whether you want unrestricted access or specific URLs
- Your Golem node ID (run `yagna id show` to get this)

That's it! The tool handles all the complex certificate generation and signing automatically.

## Provider Setup

After generating your certificate:

1. Share your signed certificate (`root-cert-template.signed.json`) with providers
2. Providers can enable your outbound access by running:
```bash
ya-provider rule set outbound partner import-cert root-cert-template.signed.json --mode all
```
## Using in Your Tasks

We've covered in our documentation how to use the files in your tasks:

### Yapapi
https://...

### golem-js
https://...

### Dapp-runner (golem-compose)
https://...


## Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

2 changes: 1 addition & 1 deletion src/golem_cert_companion/certificate_manager.py
Original file line number Diff line number Diff line change
Expand Up @@ -373,7 +373,7 @@ def update_outbound_unrestricted(data):
print(' 1. Download the certificate from: [YOUR_DOWNLOAD_LINK]')
print(' 2. Run this command:')
print(
f' {Fore.GREEN}ya-provider --rule set outbound partner import-cert root-certificate.signed.json --mode all{Style.RESET_ALL}"\n')
f' {Fore.GREEN}ya-provider rule set outbound partner import-cert root-cert-template.signed.json --mode all{Style.RESET_ALL}"\n')

print(f"{Fore.CYAN}Using the Node Descriptor in Tasks:{Style.RESET_ALL}")
print(
Expand Down

0 comments on commit 1b4dc7c

Please sign in to comment.