This tutorial by Pumpkin focuses on the specific task in the title. Pumpkin still needs to be evaluated for production use based on project maturity; Minecraft server migration cannot just be based on whether you can log in, but also verify world data, plug-in or protocol compatibility, delays and rollbacks.
Below is a demonstration using a test environment and revocable data. When accounts, keys, machine control, investments or emergency communications are involved, manual confirmation must be done.
First confirm the maturity and support scope of Pumpkin
This section only deals with “Confirming Pumpkin’s maturity and support scope first”. Save the current state first and then run the minimal test. Do not change multiple conditions at the same time.
|
|
For Pumpkin, the results must be judged with this boundary in mind: Pumpkin still needs to evaluate production use according to project maturity; Minecraft server migration cannot only be based on whether you can log in, but also verify world data, plug-in or protocol compatibility, delays and rollbacks.
If the results are not repeatable, record the version, input, and logs, then narrow the scope of the test.
Java version and Bedrock version are not the same protocol
It is recommended to execute in the following order:
- Check the actual version and source.
- Use a test account, test directory, or test device.
- Perform an undoable action.
- Save the output, exit code, or screenshot.
- Revert the changes and re-verify.
|
|
The completion criterion is that “Java version and Bedrock version are not the same protocol” and a verifiable result is obtained, rather than the command just not reporting an error.
Start with a blank test world
| Check items | Passing criteria | Stop signal |
|---|---|---|
| Start with a blank test world | Clear input, output and permission scope | Tools automatically expand the scope of operations |
| Source | Can return to the official warehouse or original data | Rely on unknown mirrors or second-hand conclusions |
| Security | No secret value in log | Token, cookie or private data present |
| Recovery | Ability to return to pre-execution state | No backup or undo methods |
|
|
When a stop signal appears, resume first and do not continue to the next step.
Docker container only opens required game ports
This section only deals with “Docker containers only open required game ports”. Save the current state first and then run the minimal test. Do not change multiple conditions at the same time.
|
|
For Pumpkin, the results must be judged with this boundary in mind: Pumpkin still needs to evaluate production use according to project maturity; Minecraft server migration cannot only be based on whether you can log in, but also verify world data, plug-in or protocol compatibility, delays and rollbacks.
If the results are not repeatable, record the version, input, and logs, then narrow the scope of the test.
Save the log completely when starting for the first time
It is recommended to execute in the following order:
- Check the actual version and source.
- Use a test account, test directory, or test device.
- Perform an undoable action.
- Save the output, exit code, or screenshot.
- Revert the changes and re-verify.
|
|
The completion standard is to obtain verifiable results by “completely saving the log when starting for the first time”, rather than the command just not reporting an error.
What actions can the client test after entering?
| Check items | Passing criteria | Stop signal |
|---|---|---|
| What actions can the client test after entering | Clear input, output and permission ranges | The tool automatically expands the scope of operations |
| Source | Can return to the official warehouse or original data | Rely on unknown mirrors or second-hand conclusions |
| Security | No secret value in log | Token, cookie or private data present |
| Recovery | Ability to return to pre-execution state | No backup or undo methods |
|
|
When a stop signal appears, resume first and do not continue to the next step.
Don’t judge performance by the number of people online
This section only deals with “Don’t judge performance by the number of people online”. Save the current state first and then run the minimal test. Do not change multiple conditions at the same time.
|
|
For Pumpkin, the results must be judged with this boundary in mind: Pumpkin still needs to evaluate production use according to project maturity; Minecraft server migration cannot only be based on whether you can log in, but also verify world data, plug-in or protocol compatibility, delays and rollbacks.
If the results are not repeatable, record the version, input, and logs, then narrow the scope of the test.
Record tick, CPU, memory and latency
It is recommended to execute in the following order:
- Check the actual version and source.
- Use a test account, test directory, or test device.
- Perform an undoable action.
- Save the output, exit code, or screenshot.
- Revert the changes and re-verify.
|
|
The completion standard is to “record tick, CPU, memory and delay” to obtain verifiable results, rather than the command just not reporting an error.
Verify restart consistency after saving the world
| Check items | Passing criteria | Stop signal |
|---|---|---|
| Verify restart consistency after saving the world | Clear input, output and permission ranges | Tools automatically expand the scope of operations |
| Source | Can return to the official warehouse or original data | Rely on unknown mirrors or second-hand conclusions |
| Security | No secret value in log | Token, cookie or private data present |
| Recovery | Ability to return to pre-execution state | No backup or undo methods |
|
|
When a stop signal appears, resume first and do not continue to the next step.
Compatibility of plug-ins and modules must be confirmed separately
This section only deals with “compatibility of plug-ins and modules must be confirmed separately”. Save the current state first and then run the minimal test. Do not change multiple conditions at the same time.
|
|
For Pumpkin, the results must be judged with this boundary in mind: Pumpkin still needs to evaluate production use according to project maturity; Minecraft server migration cannot only be based on whether you can log in, but also verify world data, plug-in or protocol compatibility, delays and rollbacks.
If the results are not repeatable, record the version, input, and logs, then narrow the scope of the test.
Bedrock compatibility layer needs to be tested across versions
It is recommended to execute in the following order:
- Check the actual version and source.
- Use a test account, test directory, or test device.
- Perform an undoable action.
- Save the output, exit code, or screenshot.
- Revert the changes and re-verify.
|
|
The completion standard is that “the Bedrock compatibility layer needs to be tested across versions” to obtain verifiable results, rather than that the command happens to report no errors.
Set access control before opening the public network
| Check items | Passing criteria | Stop signal |
|---|---|---|
| Set access control before opening the public network | Clear input, output and permission scope | Tool automatically expands the scope of operation |
| Source | Can return to the official warehouse or original data | Rely on unknown mirrors or second-hand conclusions |
| Security | No secret value in log | Token, cookie or private data present |
| Recovery | Ability to return to pre-execution state | No backup or undo methods |
|
|
When a stop signal appears, resume first and do not continue to the next step.
Back up world, configuration and player data
This section only deals with “Backing up world, configuration, and player data”. Save the current state first and then run the minimal test. Do not change multiple conditions at the same time.
|
|
For Pumpkin, the results must be judged with this boundary in mind: Pumpkin still needs to evaluate production use according to project maturity; Minecraft server migration cannot only be based on whether you can log in, but also verify world data, plug-in or protocol compatibility, delays and rollbacks.
If the results are not repeatable, record the version, input, and logs, then narrow the scope of the test.
To upgrade the image, copy the test instance first
It is recommended to execute in the following order:
- Check the actual version and source.
- Use a test account, test directory, or test device.
- Perform an undoable action.
- Save the output, exit code, or screenshot.
- Revert the changes and re-verify.
|
|
The completion standard is to “upgrade the image and copy the test instance first” to obtain verifiable results, rather than the command just not reporting an error.
Check world damage after abnormal shutdown
| Check items | Passing criteria | Stop signal |
|---|---|---|
| Check world damage after abnormal shutdown | Input, output and permission ranges are clear | Tools automatically expand the operating range |
| Source | Can return to the official warehouse or original data | Rely on unknown mirrors or second-hand conclusions |
| Security | No secret value in log | Token, cookie or private data present |
| Recovery | Ability to return to pre-execution state | No backup or undo methods |
|
|
When a stop signal appears, resume first and do not continue to the next step.
Exit conditions for production migration
This section only deals with “Exit conditions for production migration”. Save the current state first and then run the minimal test. Do not change multiple conditions at the same time.
|
|
For Pumpkin, the results must be judged with this boundary in mind: Pumpkin still needs to evaluate production use according to project maturity; Minecraft server migration cannot only be based on whether you can log in, but also verify world data, plug-in or protocol compatibility, delays and rollbacks.
If the results are not repeatable, record the version, input, and logs, then narrow the scope of the test.
The whitelist and administrator permissions must be verified on the test server first.
It is recommended to execute in the following order:
- Check the actual version and source.
- Use a test account, test directory, or test device.
- Perform an undoable action.
- Save the output, exit code, or screenshot.
- Revert the changes and re-verify.
|
|
The completion standard is that “the whitelist and administrator permissions are first verified on the test server” to obtain verifiable results, rather than that the command happens to not report an error.
Load changes when more than three players are connected at the same time
| Check items | Passing criteria | Stop signal |
|---|---|---|
| Load changes when more than three players are connected at the same time | Clear scope of input, output and permissions | Tool automatically expands the scope of operation |
| Source | Can return to the official warehouse or original data | Rely on unknown mirrors or second-hand conclusions |
| Security | No secret value in log | Token, cookie or private data present |
| Recovery | Ability to return to pre-execution state | No backup or undo methods |
|
|
When a stop signal appears, resume first and do not continue to the next step.
After rollback, the client version still needs to be retested
This section only deals with “the client version still needs to be retested after rollback”. Save the current state first and then run the minimal test. Do not change multiple conditions at the same time.
|
|
For Pumpkin, the results must be judged with this boundary in mind: Pumpkin still needs to evaluate production use according to project maturity; Minecraft server migration cannot only be based on whether you can log in, but also verify world data, plug-in or protocol compatibility, delays and rollbacks.
If the results are not repeatable, record the version, input, and logs, then narrow the scope of the test.
Pumpkin’s Final Checkup
- The versions and sources used are documented.
- Test input and formal data have been isolated.
- Commands, configurations and actual output can correspond.
- The failed path was actively tested at least once.
- Keys, accounts and private data do not enter Git or logs.
- There are clear actions for upgrading, stopping and resuming.
If you still can’t explain how the results occur, keep Pumpkin in a test environment without extending permissions or replacing existing stable processes.