-
Notifications
You must be signed in to change notification settings - Fork 4
145 lines (119 loc) · 4.01 KB
/
gradle.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
name: Java CI with Gradle
on:
push:
branches: [ "master" ]
pull_request:
branches: [ "master" ]
jobs:
build:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
- name: Setup Gradle
uses: gradle/actions/setup-gradle@417ae3ccd767c252f5661f1ace9f835f9654f2b5
- name: Setup resource usage collection
run: |
# Create a script to log resource usage with timestamps
echo 'while true; do' > monitor_resources.sh
echo ' echo "$(date): Disk Usage:" >> resource_usage.log' >> monitor_resources.sh
echo ' df -h >> resource_usage.log' >> monitor_resources.sh
echo ' echo "" >> resource_usage.log' >> monitor_resources.sh
echo ' echo "$(date): CPU Usage:" >> resource_usage.log' >> monitor_resources.sh
echo ' top -b -n 1 | head -n 10 >> resource_usage.log' >> monitor_resources.sh
echo ' echo "" >> resource_usage.log' >> monitor_resources.sh
echo ' echo "$(date): Memory Usage:" >> resource_usage.log' >> monitor_resources.sh
echo ' free -h >> resource_usage.log' >> monitor_resources.sh
echo ' echo "" >> resource_usage.log' >> monitor_resources.sh
echo ' sleep 5' >> monitor_resources.sh
echo 'done' >> monitor_resources.sh
# Make the script executable
chmod +x monitor_resources.sh
# Start the script in the background
nohup ./monitor_resources.sh &
- name: Build with Gradle Wrapper
id: gradle_build
run: ./gradlew build -i || echo "Gradle build failed" > gradle_build_result.txt
continue-on-error: true
- name: Upload resource usage log
if: always()
uses: actions/upload-artifact@v2
with:
name: resource-usage-log
path: resource_usage.log
- name: Check build result
if: always()
run: |
if [ -f gradle_build_result.txt ]; then
echo "Build failed."
exit 1
else
echo "Build succeeded."
fi
dependency-submission:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
- name: Generate and submit dependency graph
uses: gradle/actions/dependency-submission@417ae3ccd767c252f5661f1ace9f835f9654f2b5
javadoc:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v3
- name: Build Javadoc
run: ./gradlew javadoc
- name: Publish Javadoc
uses: actions/upload-artifact@v4
with:
path: build/docs/javadoc
name: github-pages
publish_site:
runs-on: ubuntu-latest
permissions:
id-token: write
contents: read
pages: write
needs:
- javadoc
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- name: Enable debug logging
run: |
echo "ACTIONS_RUNNER_DEBUG=true" >> $GITHUB_ENV
echo "ACTIONS_STEP_DEBUG=true" >> $GITHUB_ENV
- name: Download Javadoc artifact
uses: actions/download-artifact@v3
with:
name: github-pages
path: build/docs/javadoc
- name: List artifact contents for debugging
run: ls -R build/docs/javadoc
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
with:
path: build/docs/javadoc