Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor: improve release process #10

Merged
merged 18 commits into from
Jul 4, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
9 changes: 0 additions & 9 deletions .classpath

This file was deleted.

37 changes: 7 additions & 30 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,32 +1,9 @@
# See https://help.github.com/articles/dealing-with-line-endings/
# Set the default behavior, in case people don't have core.autocrlf set.
* text=auto
#
# https://help.github.com/articles/dealing-with-line-endings/
#
# Linux start script should use lf
/gradlew text eol=lf

# Explicitly declare text files you want to always be normalized and converted
# to native line endings on checkout.
*.java text
*.properties text
*.js text
*.html text
*.css text
*.svg text
*.xml text
*.txt text
LICENSE text
# These are Windows script files and should use crlf
*.bat text eol=crlf

# Declare files that will always have LF line endings on checkout.
# MANIFEST may have any line endings but we prefer the same on all platforms
*.MF text eol=lf
# Same with .git* files
.git* text eol=lf

# Denote all files that are truly binary and should not be modified.
*.jar binary
*.png binary
*.jpg binary
*.gif binary
*.eot binary
*.ttf binary
*.woff binary
*.woff2 binary
*.pdf binary
29 changes: 0 additions & 29 deletions .github/workflows/ant.yml

This file was deleted.

4 changes: 2 additions & 2 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ on:
runTests:
description: 'Run tests'
required: true
default: 'false'
default: 'true'
type: choice
options:
- 'true'
Expand Down Expand Up @@ -44,4 +44,4 @@ jobs:
./gradlew build
else
./gradlew build -x test
fi
fi
44 changes: 44 additions & 0 deletions .github/workflows/deliverables.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: Create and upload jar file

env:
PROJECT_NAME: Zip64File

on:
push:
tags:
- v*.**

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set TAG-Env
run: echo "NAME_TAG=${PROJECT_NAME}-${GITHUB_REF#refs/*/}" >> $GITHUB_ENV
- name: Set up JDK 8
uses: actions/setup-java@v4
with:
java-version: '8'
distribution: 'temurin'
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v3
- name: Show current application version
run: ./gradlew cV
- name: Execute Gradle build
run: ./gradlew build
- name: Store reports
if: failure()
uses: actions/upload-artifact@v4
with:
name: reports
path: |
**/build/reports/
**/build/test-results/
- name: upload deliverables
uses: actions/upload-artifact@v4
with:
name: ${{ env.NAME_TAG }}
path: build/libs/
if-no-files-found: error
2 changes: 1 addition & 1 deletion .github/workflows/issues.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
name: Add issue to project
runs-on: ubuntu-latest
steps:
- uses: actions/add-to-project@v0.4.1
- uses: actions/add-to-project@v1.0.1
with:
project-url: https://github.com/users/sfa-siard/projects/1
github-token: ${{ secrets.ADD_TO_PROJECT_PAT }}
12 changes: 9 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,16 +1,22 @@
# ignore all build directories
/build/**
/build/

# ignore javadoc folder
/doc/javadoc/**

# tmp contains temporary files
/tmp/**

# dist contains the binary build results
/dist/**

# sometimes junit4 produces temporary files that we do not want to check in
/junit*.*
/build/


# ignore IDE and tool-specific files
.idea/
*.iml
.tool-versions

# ignore Gradle project-specific cache directory
.gradle
17 changes: 0 additions & 17 deletions .project

This file was deleted.

3 changes: 0 additions & 3 deletions .settings/org.eclipse.core.resources.prefs

This file was deleted.

38 changes: 17 additions & 21 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,35 +1,31 @@
# Zip64File - ZIP 64 handler for SIARD 2.1
# Zip64File - SIARD ZIP 64 handler

This package contains a ZIP 64 handler.
Its main intention reading and writing ZIP files which conform to the
64 bit extension of the ZIP standard.
This package contains a ZIP 64 handler. Its main purpose is reading and writing ZIP files which conform to the 64 bit extension of the ZIP standard. It also includes a command-line tool for reading and writing ZIP files in ZIP 64 format.

It also includes a command-line tool for reading and
writing ZIP files in ZIP 64 format.
## Prerequisites

## Getting started (for devs)

For building the binaries, Java JDK (1.8 or higher) and Ant must
have been installed. Adjust `build.properties` according to your needs (if needed).

Run all tests:
For building the binaries, Java JDK (1.8 or higher) must be installed.

### Run all tests
```shell
ant test
./gradlew check
```

Create a release
### Build the project
```shell
./gradlew clean build
```

### Create a release
This creates a new tag and pushes the tag to main branch.
```shell
ant release
./gradlew release
```

## Documentation
- [User's Manual](./doc/manual/user/index.html)
- [Developer's Manual](./doc/manual/developer/index.html)

[./doc/manual/user/index.html](./doc/manual/user/index.html) contains the manual for using the binaries.
[./doc/manual/developer/index.html](./doc/manual/user/index.html) is the manual for developers wishing
build the binaries or work on the code.

## Declaration
Contributions to the codebase have been made with the support of Codeium. Codeium is AI-powered code completion tool, that is trained exclusively on natural language and source code data with [permissive licenses](https://codeium.com/blog/copilot-trains-on-gpl-codeium-does-not ).

More information about the build process can be found in
[./doc/manual/developer/build.html](./doc/manual/developer/build.html).
17 changes: 0 additions & 17 deletions RELEASE.txt

This file was deleted.

28 changes: 28 additions & 0 deletions build.gradle.kts
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
plugins {
`java-library`
id("pl.allegro.tech.build.axion-release") version "1.14.3"
id("io.freefair.lombok") version "6.5.0"
}

group = "ch.admin.bar"
version = scmVersion.version

java {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}

repositories {
mavenCentral()
}

dependencies {
implementation("ch.admin.bar:enterutilities:v2.2.3")
testImplementation("org.junit.jupiter:junit-jupiter-api:5.10.1")
testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:5.10.1")
}

tasks.test {
useJUnitPlatform()
}

44 changes: 0 additions & 44 deletions build.properties

This file was deleted.

53 changes: 0 additions & 53 deletions build.properties.template

This file was deleted.

Loading