generate_change_log.sh 1018 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. #!/usr/bin/env bash
  2. checksum() {
  3. echo $(sha256sum $@ | awk '{print $1}')
  4. }
  5. change_log_file="./CHANGELOG.md"
  6. version="## $@"
  7. version_prefix="## v"
  8. start=0
  9. CHANGE_LOG=""
  10. while read line; do
  11. if [[ $line == *"$version"* ]]; then
  12. start=1
  13. continue
  14. fi
  15. if [[ $line == *"$version_prefix"* ]] && [ $start == 1 ]; then
  16. break;
  17. fi
  18. if [ $start == 1 ]; then
  19. CHANGE_LOG+="$line\n"
  20. fi
  21. done < ${change_log_file}
  22. MAINNET_ZIP_SUM="$(checksum ./mainnet.zip)"
  23. TESTNET_ZIP_SUM="$(checksum ./testnet.zip)"
  24. LINUX_BIN_SUM="$(checksum ./linux/geth)"
  25. MAC_BIN_SUM="$(checksum ./macos/geth)"
  26. WINDOWS_BIN_SUM="$(checksum ./windows/geth.exe)"
  27. OUTPUT=$(cat <<-END
  28. ## Changelog\n
  29. ${CHANGE_LOG}\n
  30. ## Assets\n
  31. | Assets | Sha256 Checksum |\n
  32. | :-----------: |------------|\n
  33. | mainnet.zip | ${MAINNET_ZIP_SUM} |\n
  34. | testnet.zip | ${TESTNET_ZIP_SUM} |\n
  35. | geth_linux | ${LINUX_BIN_SUM} |\n
  36. | geth_mac | ${MAC_BIN_SUM} |\n
  37. | geth_windows | ${WINDOWS_BIN_SUM} |\n
  38. END
  39. )
  40. echo -e ${OUTPUT}