chore(deps): bump golang.org/x/net from 0.32.0 to 0.38.0 in /test#1
Closed
dependabot[bot] wants to merge 27 commits intomainfrom
Closed
chore(deps): bump golang.org/x/net from 0.32.0 to 0.38.0 in /test#1dependabot[bot] wants to merge 27 commits intomainfrom
dependabot[bot] wants to merge 27 commits intomainfrom
Conversation
- Add TARGET_VERSION environment variable to docker run command in run-upgrade task - Create specific tasks for upgrading to intermediate versions (14->15, 14->16, 15->16) - Update Makefile to use the correct task names for intermediate version upgrades
- Remove incorrect working-directory references from workflow steps - Simplify workflow trigger paths to work with standalone repository - Fix upgrade test tasks to support intermediate PostgreSQL versions - Add TARGET_VERSION environment variable to Docker containers
…on modes - Add support for command line arguments (legacy mode) for workflows that pass FROM_VERSION TO_VERSION - Keep auto-detection mode for workflows that mount data volumes without arguments - Improve error handling with clear usage instructions
- Mount PostgreSQL data to correct directories expected by docker-upgrade-multi - Create target version directories before upgrade - Ensure proper permissions for test data directories
- Change pre-upgrade to run:pre-upgrade-check - Change post-upgrade to run:post-upgrade-check - These match the actual task names defined in Taskfile.run.yaml
- Remove 'internal: true' from both tasks so they can be called by docker-upgrade-multi script - These tasks need to be accessible from the command line for the upgrade process to work
- Keep postgres as the superuser (required for pg_upgrade) - Create testuser as a regular user, not as POSTGRES_USER - Remove unnecessary environment variables from upgrade step - This should fix the 'role postgres does not exist' error
- The --link flag requires both data directories to be on the same filesystem - When using separate volume mounts for different PostgreSQL versions, they're on different filesystems - This causes the 'Invalid cross-device link' error - Using copy mode instead of link mode will be slower but will work correctly
- Add verbose output to pg_upgrade commands for better debugging - Add --retain flag to keep upgrade logs for troubleshooting - Add 10-minute timeout to upgrade steps to prevent indefinite hanging - Add echo statements to show progress during upgrades
…tartup - Remove PostgreSQL server startup from post-upgrade checks - Use pg_controldata to verify the upgraded cluster instead - Check for essential configuration files - This avoids the hanging issue when trying to start PostgreSQL in the container
- Remove volume cloning, use mounted seed scripts instead - Preserve volumes on failure for debugging - Ensure stdout/stderr properly captured and returned - Remove unnecessary data copying, use pg_upgrade --link - Update test framework to not auto-delete on failures - Remove silent flags from tasks for better visibility - Simplify docker-entrypoint to delegate to Taskfile - Add smart auto-detection and upgrade with PG_VERSION env var
The Docker build was failing because the Dockerfile specified exact PostgreSQL package versions that are no longer available in the APT repository: - postgresql-14='14.18-1.pgdg120+1' - postgresql-15='15.13-1.pgdg120+1' - postgresql-16='16.9-1.pgdg120+1' This commit removes the version pinning, allowing apt-get to install the latest available patch version for each major PostgreSQL version. This prevents future build failures when patch versions are updated in the repository.
- Remove --link flags from all pg_upgrade commands to use copy mode instead of hard-linking files, which is safer for containerized environments - Add echo statements before all PostgreSQL commands (pg_upgrade, pg_controldata, initdb, pg_ctl, psql) for better debugging visibility - This should resolve test failures where linking mode was causing issues Changes made: - upgrade-single task: removed --link flags and added debug output - run-pg-upgrade task: removed --link flags and added debug output - All pg_* commands now echo the exact command being executed
…dling - Replace symlink-based data management with content-only moves - Move contents of /var/lib/postgresql/data to backups/ directory - Preserve backups directory inside main data volume - Move upgraded contents back after upgrade completion - Add comprehensive WAL/LSN logging before and after upgrades - Log Latest checkpoint location, REDO location, NextXID - Log Database system identifier, pg_control version - Display cluster state information for debugging - Fix 'cluster not cleanly shut down' warnings - Add proper pg_ctl stop before pg_controldata checks - Use fast shutdown mode with wait for clean shutdown - Sleep after shutdown to ensure complete stop - Enhance error handling and debugging visibility - More detailed pre/post upgrade cluster state logging - Better error messages for cluster verification failures These changes should eliminate upgrade warnings and provide better visibility into the upgrade process for troubleshooting.
- Fix upgrade-single paths:
- PGDATAOLD: /var/lib/postgresql/data (main data directory)
- PGDATANEW: /var/lib/postgresql/data/upgrades/{TO_VERSION}
- Update auto-upgrade and sequential-upgrade tasks to use correct structure:
- All operations work within /var/lib/postgresql/data volume
- Upgrades use /var/lib/postgresql/data/upgrades/ subdirectory
- After each upgrade step, data is moved back to main location
- Backups preserved in /var/lib/postgresql/data/backups/
- Directory structure:
/var/lib/postgresql/data/ # Main data (volume mount)
/var/lib/postgresql/data/backups/ # Original data backups
/var/lib/postgresql/data/upgrades/15/ # Temp PG15 upgrade cluster
/var/lib/postgresql/data/upgrades/16/ # Temp PG16 upgrade cluster
This fixes the issue where logs showed incorrect paths like:
'PostgreSQL 14 cluster verified at /var/lib/postgresql/14/data'
instead of the correct:
'PostgreSQL 14 cluster verified at /var/lib/postgresql/data'
- Change test workflow to mount data to /var/lib/postgresql/data instead of version-specific paths like /var/lib/postgresql/15/data - Use PG_VERSION environment variable for auto-upgrade target version - Simplify ARM64 test to use auto-upgrade with docker-entrypoint.sh - Update verification step to use same data directory approach This aligns the test workflow with the updated container logic that expects data in the standard /var/lib/postgresql/data location. Before: -v test-data/15:/var/lib/postgresql/15/data -v test-data/16:/var/lib/postgresql/16/data After: -v test-data/15:/var/lib/postgresql/data -e PG_VERSION=16
The auto-upgrade task was moving data to backups but leaving the main
/var/lib/postgresql/data directory empty, causing upgrade-single to fail
with 'No PostgreSQL cluster found'.
Fixed by:
- After backing up data to /var/lib/postgresql/data/backups/data-{version}
- Copy the backup back to /var/lib/postgresql/data/ before starting upgrades
- This ensures upgrade-single finds the data in the expected location
This completes the data flow:
1. Original data in /var/lib/postgresql/data
2. Move to /var/lib/postgresql/data/backups/data-15 (preserve)
3. Copy back to /var/lib/postgresql/data (for upgrade)
4. Upgrade creates new data in /var/lib/postgresql/data/upgrades/16
5. Move upgraded data back to /var/lib/postgresql/data
- Add missing test:clean task to Taskfile.test.yaml - Fix Makefile task references (upgrade-14-to-15 -> upgrade-14-to-17) - Remove invalid local commons replacement from test/go.mod - Update module names to match repository structure 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.32.0 to 0.38.0. - [Commits](golang/net@v0.32.0...v0.38.0) --- updated-dependencies: - dependency-name: golang.org/x/net dependency-version: 0.38.0 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com>
Contributor
Author
|
OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting If you change your mind, just re-open this PR and I'll resolve any conflicts on it. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Bumps golang.org/x/net from 0.32.0 to 0.38.0.
Commits
e1fcd82html: properly handle trailing solidus in unquoted attribute value in foreign...ebed060internal/http3: fix build of tests with GOEXPERIMENT=nosynctest1f1fa29publicsuffix: regenerate table1215081http2: improve error when server sends HTTP/1312450ehtml: ensure <search> tag closes <p> and update tests09731f9http2: improve handling of lost PING in Server55989e2http2/h2c: use ResponseController for hijacking connections2914f46websocket: re-recommend gorilla/websocket99b3ae0go.mod: update golang.org/x dependencies85d1d54go.mod: update golang.org/x dependenciesDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot mergewill merge this PR after your CI passes on it@dependabot squash and mergewill squash and merge this PR after your CI passes on it@dependabot cancel mergewill cancel a previously requested merge and block automerging@dependabot reopenwill reopen this PR if it is closed@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)You can disable automated security fix PRs for this repo from the Security Alerts page.