generate_change_log.sh 928 B

123456789101112131415161718192021222324252627282930313233343536373839
  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. OUTPUT=$(cat <<-END
  27. ## Changelog\n
  28. ${CHANGE_LOG}\n
  29. ## Assets\n
  30. | Assets | Sha256 Checksum |\n
  31. | :-----------: |------------|\n
  32. | mainnet.zip | ${MAINNET_ZIP_SUM} |\n
  33. | testnet.zip | ${TESTNET_ZIP_SUM} |\n
  34. | geth_linux | ${LINUX_BIN_SUM} |\n
  35. | geth_mac | ${MAC_BIN_SUM} |\n
  36. END
  37. )
  38. echo -e ${OUTPUT}