Skip to content

Release v1.0.0

Choose a tag to compare

@github-actions github-actions released this 22 Oct 06:59
· 13 commits to master since this release
v1.0.0
c916750

Release Date: October 22, 2025

🎉 Initial Release

This is the first stable release of Spot Instance Advisor, a command-line tool for analyzing Alibaba Cloud Spot instance prices and availability.

✨ Features

Core Functionality

  • Instance Filtering: Filter instances by CPU cores, memory, and instance family
  • Price Analysis: Analyze historical Spot prices with customizable time windows
  • Cost Optimization: Find instances with the best price-to-performance ratios
  • Availability Insights: Get price stability indicators (possibility scores)

Output Formats

  • Human-readable tables: Easy-to-read formatted output
  • JSON output: Machine-readable format for automation (--json flag)
  • JSON error format: Structured error messages when using JSON mode

Multi-Platform Support

Pre-built binaries available for:

  • Linux: amd64, arm64
  • macOS/Darwin: amd64, arm64
  • Windows: amd64

All binaries are statically linked and optimized for production use.

📋 Command Line Options

Authentication

  • --accessKeyId: Alibaba Cloud Access Key ID (required)
  • --accessKeySecret: Alibaba Cloud Access Key Secret (required)
  • --region: Target region (default: cn-hangzhou)

Instance Filtering

  • --mincpu / --maxcpu: CPU core range (default: 1-32)
  • --minmem / --maxmem: Memory range in GB (default: 2-64)
  • --family: Instance family filter (comma-separated, e.g., ecs.n1,ecs.n2)

Analysis Parameters

  • --cutoff: Discount threshold (default: 2)
  • --limit: Maximum number of results (default: 20)
  • --resolution: Price history analysis window in days (default: 7)

Output Format

  • --json: Output results in JSON format

📦 Installation

Download Pre-built Binaries

Download the appropriate binary for your platform from the Releases page.

Build from Source

git clone <repository-url>
cd spot-instance-advisor
make build

🚀 Quick Start

# Basic usage with table output
./spot-instance-advisor \
  --accessKeyId YOUR_ACCESS_KEY_ID \
  --accessKeySecret YOUR_ACCESS_KEY_SECRET \
  --region cn-hangzhou

# JSON output for programmatic use
./spot-instance-advisor \
  --accessKeyId YOUR_ACCESS_KEY_ID \
  --accessKeySecret YOUR_ACCESS_KEY_SECRET \
  --region cn-hangzhou \
  --json

📚 Documentation

🔧 Infrastructure

  • Go Modules: Modern dependency management
  • GitHub Actions: Automated CI/CD pipeline
  • Automated Releases: Cross-platform binary builds
  • Makefile: Comprehensive build system

📝 JSON Output Format

When using --json, the output format is:

[
  {
    "instanceTypeId": "ecs.n1.small",
    "zoneId": "cn-hangzhou-a",
    "pricePerCore": 0.1234,
    "discount": 2.5,
    "possibility": 0.8,
    "cpuCoreCount": 1,
    "memorySize": 2.0,
    "instanceFamily": "ecs.n1"
  }
]

🙏 Acknowledgments

  • Alibaba Cloud for providing the ECS API
  • The Go community for excellent tooling and libraries

Full Changelog: See CHANGELOG.md