Skip to content

Commit 4cbcabf

Browse files
Flossyclaude
andcommitted
Initial release: JClassLoader - Universal Java ClassLoader with 40+ protocols
Features: - 40+ transport protocols supported - 37 implementation classes - 26 passing unit tests - Comprehensive documentation (4 guides) Protocol Coverage: - File Systems: Local, HTTP/HTTPS, FTP/FTPS, SFTP, WebDAV, HDFS - Cloud Storage: AWS S3, Azure Blob, GCS, MinIO, Backblaze B2, CloudFlare R2 - Cloud Files: Google Drive, Dropbox, OneDrive - Repositories: Maven Central, Nexus, Artifactory, JFrog - VCS: Git (GitHub, GitLab, Bitbucket) - Messaging: Kafka, RabbitMQ, Redis - Containers: Kubernetes ConfigMaps, Docker Registry - P2P: IPFS - Database: JDBC (any database) - Custom: REST APIs, custom protocol handlers Authentication: - HTTP Basic, Bearer Token, SSH Keys - AWS IAM, Azure Keys, Google Service Accounts - OAuth 2.0 (Drive, OneDrive, Dropbox) - Kafka SASL, Redis, Kerberos Performance: - Multi-layer caching (file-system + memory) - Configurable source priority - Connection pooling CI/CD: - GitHub Actions workflow - Automatic version bumping - Deploy to packagecloud.io - Git tagging Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
1 parent 4180aea commit 4cbcabf

47 files changed

Lines changed: 6647 additions & 0 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/main.yml

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
name: CD-CI
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
7+
jobs:
8+
build:
9+
if: github.event_name == 'push' && github.ref == 'refs/heads/main' && github.event.pusher.email != 'version-bump@flossware.org'
10+
runs-on: ubuntu-latest
11+
env:
12+
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true
13+
14+
steps:
15+
- name: Updating runner
16+
run: sudo apt-get update
17+
18+
- name: Setup JDK 21
19+
uses: actions/setup-java@v4
20+
with:
21+
distribution: 'temurin'
22+
java-version: '21'
23+
24+
- name: Checkout
25+
uses: actions/checkout@v4
26+
27+
- name: Preparing settings.xml
28+
uses: s4u/maven-settings-action@v3.1.0
29+
with:
30+
githubServer: false
31+
servers: |
32+
[
33+
{
34+
"id": "packagecloud-flossware",
35+
"configuration": {
36+
"httpHeaders": {
37+
"property": {
38+
"name": "Authorization",
39+
"value": "Bearer ${{ secrets.PACKAGECLOUD_TOKEN }}"
40+
}
41+
}
42+
}
43+
}
44+
]
45+
46+
- name: Setup .gitconfig for version bumps
47+
uses: oleksiyrudenko/gha-git-credentials@latest
48+
with:
49+
global: true
50+
name: 'Version Bump'
51+
email: 'version-bump@flossware.org'
52+
actor: 'VersionBump'
53+
token: '${{ secrets.GITHUB_TOKEN }}'
54+
55+
- name: Incrementing pom.xml version
56+
run: "mvn -U build-helper:parse-version versions:set -DnewVersion=\\${parsedVersion.majorVersion}.\\${parsedVersion.nextMinorVersion} versions:commit"
57+
58+
- name: Ensure latest dependencies in pom.xml
59+
run: "mvn -Dincludes='org.junit.jupiter:*' -DgenerateBackupPoms=false versions:update-properties"
60+
61+
- name: Building
62+
run: "mvn -U clean install"
63+
64+
- name: Deploy to packagecloud.io
65+
run: "mvn -DskipTests deploy"
66+
67+
- name: Checkin and tag to github
68+
run: "mvn scm:checkin scm:tag"

0 commit comments

Comments
 (0)