it was working before because the previous tests did it. Now that it is gone, it no longer worked because there was no app.ini.
43 lines
1.1 KiB
Bash
43 lines
1.1 KiB
Bash
# SPDX-License-Identifier: MIT
|
|
|
|
function test_upload_profiles() {
|
|
FORGEJO_URL="http://localhost:6060"
|
|
PROFILECLI_URL="http://0.0.0.0:4040"
|
|
|
|
endpoints=("/debug/pprof/allocs" "/debug/pprof/block" "/debug/pprof/goroutine" "/debug/pprof/mutex" "/debug/pprof/profile?seconds=5")
|
|
curl -fL https://github.com/grafana/pyroscope/releases/download/v1.1.5/profilecli_1.1.5_linux_amd64.tar.gz -o profilecli.tar.gz
|
|
tar xzf profilecli.tar.gz
|
|
|
|
for endpoint in "${endpoints[@]}"; do
|
|
output=$(basename "$endpoint")
|
|
if [[ $endpoint == *"/profile"* ]]; then
|
|
output="profile"
|
|
fi
|
|
output="${output}.pprof"
|
|
# Download the content and save it to a file
|
|
curl -s "${FORGEJO_URL}${endpoint}" -o "${output}"
|
|
./profilecli upload ${output} --url=${PROFILECLI_URL}
|
|
|
|
rm ${output}
|
|
done
|
|
}
|
|
|
|
function test_forgejo_pprof() {
|
|
stop
|
|
docker rm -f test_pyroscope
|
|
docker run --name test_pyroscope --rm -d -p 4040:4040 docker.io/grafana/pyroscope
|
|
|
|
reset_forgejo $UPGRADE_DIR/default-app.ini
|
|
log_info "run 7.0-test"
|
|
start 7.0-test
|
|
test_upload_profiles
|
|
stop
|
|
|
|
log_info "run 8.0-test"
|
|
start 8.0-test
|
|
test_upload_profiles
|
|
stop
|
|
|
|
docker stop test_pyroscope
|
|
|
|
}
|