Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
6daa61a
add commercial api support
Stromweld Jan 1, 2026
76b8ae4
update specs and add trial/free api urls
Stromweld Jan 5, 2026
2c23a15
adding json support for new api response
Stromweld Jan 5, 2026
8b63b3a
fix download to use content distrobution headers
Stromweld Jan 5, 2026
7dd6f88
test
Stromweld Jan 5, 2026
e604126
add chef-ice to product matrix
Stromweld Jan 6, 2026
fdd8a19
fixed unit tests
Stromweld Jan 6, 2026
68d8365
test
Stromweld Jan 6, 2026
17746da
fix windows installs
Stromweld Jan 6, 2026
0538fe7
linting fixes
Stromweld Jan 6, 2026
17e7c74
linting
Stromweld Jan 6, 2026
8f8ccc8
update integration tests to use add licensed testing
Stromweld Jan 6, 2026
0e1fa05
fix cli to work with licensed downloads
Stromweld Jan 7, 2026
cb084e6
linting fixes
Stromweld Jan 7, 2026
f1a141e
fix spec tests
Stromweld Jan 7, 2026
7036142
remove ostruct dep
Stromweld Jan 7, 2026
3cf8524
fix client download file name issues with trial api
Stromweld Jan 8, 2026
069f89b
linting fix
Stromweld Jan 8, 2026
05a9e03
update copilot-instructions for latest commercial-api changes
Stromweld Jan 8, 2026
48532a6
remove test script
Stromweld Jan 8, 2026
3162a5f
Add ADR record
Stromweld Jan 8, 2026
97f4dcf
linting fixes
Stromweld Jan 9, 2026
d99fe55
fix powershell filename when downloading chef-client using commercial…
Stromweld Jan 9, 2026
9c3ec1d
add review suggested change
Stromweld Jan 12, 2026
88cd7fc
updated rubocop target ruby version to 2.6
Stromweld Jan 12, 2026
cc486c1
chefstyle linting fixes
Stromweld Jan 12, 2026
f96b30d
Merge branch 'main' into commercial-api
Stromweld Jan 13, 2026
026a7cb
update copilot-instructions to use default numbered listing vs increm…
Stromweld Jan 13, 2026
4df9ff4
add server 2025 to powershell helpers
Stromweld Jan 13, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/copilot-instructions.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,8 +43,8 @@ Mixlib::Install is a library for interacting with Chef Software Inc's software d
## Code Style & Conventions

### RuboCop Configuration
- TargetRubyVersion: 2.7 (set in `.rubocop.yml`)
- Note: While RuboCop targets 2.7, code must remain compatible with Ruby 2.6+
- TargetRubyVersion: 2.6 (set in `.rubocop.yml`)
- Note: RuboCop targets 2.6 to match the minimum supported Ruby version
- Uses `chefstyle` gem version ~> 0.4.0
- Run style checks: `bundle exec rake style`

Expand Down
10 changes: 5 additions & 5 deletions .rubocop.yml
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
---
AllCops:
TargetRubyVersion: 2.3
TargetRubyVersion: 2.6

# The following cops are disabled because their autocorrect features could
# potentially introduce syntax that breaks Ruby 2.3 compatibility, even though
# the cops themselves support Ruby 2.3
# potentially introduce syntax that breaks Ruby 2.6 compatibility, even though
# the cops themselves support Ruby 2.6

# Keep encoding comments for Ruby 2.3 compatibility (they're harmless)
# Keep encoding comments for Ruby 2.6 compatibility (they're harmless)
Style/Encoding:
Enabled: false

# Disable unless we're certain all suggestions work in Ruby 2.3
# Disable unless we're certain all suggestions work in Ruby 2.6
Style/MutableConstant:
Enabled: false

Expand Down
12 changes: 5 additions & 7 deletions ADR/adr0001.md
Original file line number Diff line number Diff line change
Expand Up @@ -393,21 +393,19 @@ sequenceDiagram

4. **Enhanced Security**: Provides better access control and security for commercial distributions by requiring authentication via license IDs

5. **Backward Compatibility**: Maintains complete backward compatibility with existing Omnitruck-based installations when no license_id is provided

6. **Cross-Platform Support**: Works seamlessly across all supported platforms and download methods:
5. **Cross-Platform Support**: Works seamlessly across all supported platforms and download methods:
- Bourne shell scripts (wget, curl, fetch, perl, python)
- PowerShell scripts
- Direct Ruby API usage
- CLI tool

7. **Flexible Authentication**: Supports multiple license types through simple prefix-based routing (free-/trial- vs commercial)
6. **Flexible Authentication**: Supports multiple license types through simple prefix-based routing (free-/trial- vs commercial)

8. **Content-Disposition Resilience**: Implements multiple fallback methods for filename extraction, ensuring downloads work even with varying server response formats
7. **Content-Disposition Resilience**: Implements multiple fallback methods for filename extraction, ensuring downloads work even with varying server response formats

9. **Transparent API Selection**: Automatically routes to the appropriate API based on license_id presence and format, requiring no additional configuration
8. **Transparent API Selection**: Automatically routes to the appropriate API based on license_id presence and format, requiring no additional configuration

10. **Future-Ready**: Prepares the codebase for the planned deprecation of unauthenticated Omnitruck access
9. **Future-Ready**: Prepares the codebase for the planned deprecation of unauthenticated Omnitruck access

### Alternative Solutions Considered

Expand Down
Loading