Skip to content

feat: add config file support, rewrite README, automate releases#1

Open
MasonEgger wants to merge 2 commits intomainfrom
updates
Open

feat: add config file support, rewrite README, automate releases#1
MasonEgger wants to merge 2 commits intomainfrom
updates

Conversation

@MasonEgger
Copy link
Copy Markdown
Collaborator

Add TOML config file support that reads from the [ts-net] section of the Temporal CLI config file (~/.config/temporalio/temporal.toml). This shares the same config file the CLI uses, with standard flag > env var > config file > defaults precedence.

Rewrite README with proper structure: prerequisites, install instructions with /usr/local/bin guidance, usage, flag reference, configuration docs, a "How to use" section showing CLI and SDK environment configuration for connecting from other machines, and a "How it works" overview.

Other changes:

  • Add VERSION file and tag-release GitHub Action to automate releases
  • Add install.sh for curl-pipe-to-sh installation
  • Bump tailscale.com from v1.82.5 to v1.96.5
  • Set goreleaser project_name to temporal-ts-net for correct archive names
  • Add CONTRIBUTORS.md and CLAUDE.md
  • Add --config flag and flag-tracking to ParseExtensionArgs
  • Add config_test.go with 18 test cases covering loading, merging, path resolution, and three-way precedence
  • Add commit-msg.md to .gitignore

Add TOML config file support that reads from the [ts-net] section of
the Temporal CLI config file (~/.config/temporalio/temporal.toml).
This shares the same config file the CLI uses, with standard
flag > env var > config file > defaults precedence.

Rewrite README with proper structure: prerequisites, install instructions
with /usr/local/bin guidance, usage, flag reference, configuration docs,
a "How to use" section showing CLI and SDK environment configuration
for connecting from other machines, and a "How it works" overview.

Other changes:
- Add VERSION file and tag-release GitHub Action to automate releases
- Add install.sh for curl-pipe-to-sh installation
- Bump tailscale.com from v1.82.5 to v1.96.5
- Set goreleaser project_name to temporal-ts-net for correct archive names
- Add CONTRIBUTORS.md and CLAUDE.md
- Add --config flag and flag-tracking to ParseExtensionArgs
- Add config_test.go with 18 test cases covering loading, merging,
  path resolution, and three-way precedence
- Add commit-msg.md to .gitignore
permissions:
contents: write

jobs:
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

I just use normal github released. not super opinionated in this project though

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

This is a way of having github do the go release as part of CI merge to main

@@ -0,0 +1,101 @@
# Session Summary: Config File Support, README Rewrite, Release Automation
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

do we want to publish these?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

This is how I've been doing my AI workflows, but I can delete them.

Comment on lines +8 to +19
INSTALL_DIR="/usr/local/bin"

# Detect OS
OS=$(uname -s)
case "$OS" in
Darwin) OS="Darwin" ;;
Linux) OS="Linux" ;;
*)
echo "Unsupported OS: $OS"
exit 1
;;
esac
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

no windows? :)

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

Does windows even use this method of installation? I guess I could change the message to say "installer unsupported, use manual install instructions."

@@ -0,0 +1 @@
0.0.3
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

not familiar with having a version file

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

This is a lazy version of having a GitHub action see this changes, then doing all the go-releaser stuff itself in CI when new version is merged to main

Comment on lines +110 to +119
```toml
[ts-net]
tailscale-hostname = "my-temporal"
tailscale-authkey = "tskey-auth-..."
tailscale-state-dir = "/path/to/state"
max-connections = 500
connection-rate-limit = 50
dial-timeout = "15s"
idle-timeout = "10m"
```
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

nice!

not familiar yet with the config toml but seems inline with cloud-cli

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

Ya i had it compare to that

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