remote at sign from tangled urls

This commit is contained in:
Evan Jarrett
2026-02-10 20:48:24 -06:00
parent 53de92e5d3
commit 4ac2b97c33
11 changed files with 39 additions and 22 deletions
+2 -2
View File
@@ -485,6 +485,6 @@ docker run --rm \
## Support
- Documentation: https://tangled.org/@evan.jarrett.net/at-container-registry
- Issues: https://tangled.org/@evan.jarrett.net/at-container-registry/issues
- Documentation: https://tangled.org/evan.jarrett.net/at-container-registry
- Issues: https://tangled.org/evan.jarrett.net/at-container-registry/issues
- Bluesky: @evan.jarrett.net
+3 -3
View File
@@ -24,7 +24,7 @@ set -euo pipefail
# Configuration
ATCR_DIR="/opt/atcr"
ATCR_REPO="https://tangled.org/@evan.jarrett.net/at-container-registry" # UPDATE THIS
ATCR_REPO="https://tangled.org/evan.jarrett.net/at-container-registry" # UPDATE THIS
ATCR_BRANCH="main"
# Simple logging without colors (for cloud-init log compatibility)
@@ -111,7 +111,7 @@ mkdir -p "$ATCR_DIR"
cd "$ATCR_DIR"
# Clone repository or create minimal structure
if [ -n "$ATCR_REPO" ] && [ "$ATCR_REPO" != "https://tangled.org/@evan.jarrett.net/at-container-registry" ]; then
if [ -n "$ATCR_REPO" ] && [ "$ATCR_REPO" != "https://tangled.org/evan.jarrett.net/at-container-registry" ]; then
log_info "Cloning ATCR repository..."
git clone -b "$ATCR_BRANCH" "$ATCR_REPO" .
else
@@ -330,7 +330,7 @@ Service Management:
systemctl status atcr-hold - Check Hold status
Documentation:
https://tangled.org/@evan.jarrett.net/at-container-registry
https://tangled.org/evan.jarrett.net/at-container-registry
IMPORTANT:
- Edit /opt/atcr/.env with S3 credentials before starting!
+1 -1
View File
@@ -13,7 +13,7 @@ import (
)
const (
repoURL = "https://tangled.org/@evan.jarrett.net/at-container-registry"
repoURL = "https://tangled.org/evan.jarrett.net/at-container-registry"
repoBranch = "main"
privateNetworkCIDR = "10.0.1.0/24"
)
+17
View File
@@ -906,6 +906,10 @@ func syncCloudInit(name, ip, localScript string) error {
answer := strings.TrimSpace(strings.ToLower(scanner.Text()))
if answer != "" && answer != "y" && answer != "yes" {
fmt.Printf(" Skipped\n")
// Still update the remote reference so next provision sees an accurate diff
if err := writeRemoteCloudInit(ip, localScript); err != nil {
fmt.Printf(" WARNING: could not update remote cloud-init reference: %v\n", err)
}
return nil
}
@@ -918,5 +922,18 @@ func syncCloudInit(name, ip, localScript string) error {
}
fmt.Printf(" %s: cloud-init complete\n", name)
// Write the script to the remote path so next provision can detect real diffs
if err := writeRemoteCloudInit(ip, localScript); err != nil {
fmt.Printf(" WARNING: could not update remote cloud-init reference: %v\n", err)
}
return nil
}
// writeRemoteCloudInit writes the local cloud-init script to the remote server
// so that subsequent provision runs can accurately detect real changes.
func writeRemoteCloudInit(ip, script string) error {
cmd := fmt.Sprintf("cat > %s << 'CLOUDINITEOF'\n%sCLOUDINITEOF", cloudInitPath, script)
_, err := runSSH(ip, cmd, false)
return err
}
+5 -5
View File
@@ -57,7 +57,7 @@ The fastest way to run AppView alongside a Hold service:
```bash
# Clone repository
git clone https://tangled.org/@evan.jarrett.net/at-container-registry
git clone https://tangled.org/evan.jarrett.net/at-container-registry
cd atcr
# Copy and configure environment
@@ -274,7 +274,7 @@ For production deployments with:
- Log rotation
- Monitoring
See **[deploy/README.md](https://tangled.org/@evan.jarrett.net/at-container-registry/blob/main/deploy/README.md)** for comprehensive production deployment guide.
See **[deploy/README.md](https://tangled.org/evan.jarrett.net/at-container-registry/blob/main/deploy/README.md)** for comprehensive production deployment guide.
### Quick Production Checklist
@@ -293,7 +293,7 @@ Before going to production:
## Configuration Files Reference
- **[.env.appview.example](https://tangled.org/@evan.jarrett.net/at-container-registry/blob/main/.env.appview.example)** - All available environment variables with documentation
- **[deploy/.env.prod.template](https://tangled.org/@evan.jarrett.net/at-container-registry/blob/main/deploy/.env.prod.template)** - Production configuration template
- **[deploy/README.md](https://tangled.org/@evan.jarrett.net/at-container-registry/blob/main/deploy/README.md)** - Production deployment guide
- **[.env.appview.example](https://tangled.org/evan.jarrett.net/at-container-registry/blob/main/.env.appview.example)** - All available environment variables with documentation
- **[deploy/.env.prod.template](https://tangled.org/evan.jarrett.net/at-container-registry/blob/main/deploy/.env.prod.template)** - Production configuration template
- **[deploy/README.md](https://tangled.org/evan.jarrett.net/at-container-registry/blob/main/deploy/README.md)** - Production deployment guide
- **[Hold Service Documentation](https://atcr.io/r/evan.jarrett.net/atcr-hold)** - Storage backend setup
+6 -6
View File
@@ -62,7 +62,7 @@ The fastest way to run Hold service with S3 storage:
```bash
# Clone repository
git clone https://tangled.org/@evan.jarrett.net/at-container-registry
git clone https://tangled.org/evan.jarrett.net/at-container-registry
cd atcr
# Copy and configure environment
@@ -355,7 +355,7 @@ For production deployments with:
- Systemd service files
- Monitoring
See **[deploy/README.md](https://tangled.org/@evan.jarrett.net/at-container-registry/blob/main/deploy/README.md)** for comprehensive production deployment guide.
See **[deploy/README.md](https://tangled.org/evan.jarrett.net/at-container-registry/blob/main/deploy/README.md)** for comprehensive production deployment guide.
### Quick Production Checklist
@@ -375,8 +375,8 @@ Before going to production:
## Configuration Files Reference
- **[.env.hold.example](https://tangled.org/@evan.jarrett.net/at-container-registry/blob/main/.env.hold.example)** - All available environment variables with documentation
- **[deploy/.env.prod.template](https://tangled.org/@evan.jarrett.net/at-container-registry/blob/main/deploy/.env.prod.template)** - Production configuration template (includes both AppView and Hold)
- **[deploy/README.md](https://tangled.org/@evan.jarrett.net/at-container-registry/blob/main/deploy/README.md)** - Production deployment guide
- **[.env.hold.example](https://tangled.org/evan.jarrett.net/at-container-registry/blob/main/.env.hold.example)** - All available environment variables with documentation
- **[deploy/.env.prod.template](https://tangled.org/evan.jarrett.net/at-container-registry/blob/main/deploy/.env.prod.template)** - Production configuration template (includes both AppView and Hold)
- **[deploy/README.md](https://tangled.org/evan.jarrett.net/at-container-registry/blob/main/deploy/README.md)** - Production deployment guide
- **[AppView Documentation](https://atcr.io/r/evan.jarrett.net/atcr-appview)** - Registry API server setup
- **[BYOS Architecture](https://tangled.org/@evan.jarrett.net/at-container-registry/blob/main/docs/BYOS.md)** - Bring Your Own Storage technical design
- **[BYOS Architecture](https://tangled.org/evan.jarrett.net/at-container-registry/blob/main/docs/BYOS.md)** - Bring Your Own Storage technical design
+1 -1
View File
@@ -225,7 +225,7 @@ func LoadConfig(yamlPath string) (*Config, error) {
// Post-load: fixed values
cfg.Auth.TokenExpiration = 5 * time.Minute
cfg.Auth.ServiceName = deriveServiceName(cfg)
cfg.CredentialHelper.TangledRepo = "https://tangled.org/@evan.jarrett.net/at-container-registry"
cfg.CredentialHelper.TangledRepo = "https://tangled.org/evan.jarrett.net/at-container-registry"
// Post-load: CompanyName defaults to ClientName
if cfg.Legal.CompanyName == "" {
+1 -1
View File
@@ -10,7 +10,7 @@ $ApiUrl = if ($env:ATCR_API_URL) { $env:ATCR_API_URL } else { "https://atcr.io/a
# Fallback configuration (used if API is unavailable)
$FallbackVersion = "v0.0.1"
$FallbackTangledRepo = "https://tangled.org/@evan.jarrett.net/at-container-registry"
$FallbackTangledRepo = "https://tangled.org/evan.jarrett.net/at-container-registry"
Write-Host "ATCR Credential Helper Installer for Windows" -ForegroundColor Green
Write-Host ""
+1 -1
View File
@@ -17,7 +17,7 @@ API_URL="${ATCR_API_URL:-https://atcr.io/api/credential-helper/version}"
# Fallback configuration (used if API is unavailable)
FALLBACK_VERSION="v0.0.1"
FALLBACK_TANGLED_REPO="https://tangled.org/@evan.jarrett.net/at-container-registry"
FALLBACK_TANGLED_REPO="https://tangled.org/evan.jarrett.net/at-container-registry"
# Detect OS and architecture
detect_platform() {
+1 -1
View File
@@ -121,7 +121,7 @@
</div>
<h3 class="text-lg font-medium mb-3">Still having issues?</h3>
<p>Check the <a href="https://tangled.org/@evan.jarrett.net/at-container-registry/blob/main/INSTALLATION.md" class="link link-primary">full documentation</a> or <a href="https://tangled.org/@evan.jarrett.net/at-container-registry/issues" class="link link-primary">open an issue</a>.</p>
<p>Check the <a href="https://tangled.org/evan.jarrett.net/at-container-registry/blob/main/INSTALLATION.md" class="link link-primary">full documentation</a> or <a href="https://tangled.org/evan.jarrett.net/at-container-registry/issues" class="link link-primary">open an issue</a>.</p>
</section>
<section>
+1 -1
View File
@@ -164,7 +164,7 @@
</p>
<div class="flex flex-col sm:flex-row items-center justify-center gap-4">
<a href="/install" class="btn btn-primary btn-lg">Get Started</a>
<a href="https://tangled.org/@evan.jarrett.net/at-container-registry" target="_blank" rel="noopener" class="btn btn-ghost btn-lg">
<a href="https://tangled.org/evan.jarrett.net/at-container-registry" target="_blank" rel="noopener" class="btn btn-ghost btn-lg">
{{ icon "github" "size-5 mr-2" }}
View Source
</a>