Advertisement
Guest User

Untitled

a guest
Oct 17th, 2018
116
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.72 KB | None | 0 0
  1. export PATH=$PATH:$ANDROID_HOME/"build-tools"/27.0.3
  2. GRADLEW=$(find . -name "gradlew")
  3. sudo chmod +x $GRADLEW
  4. PROJECTPATH=$(dirname "${GRADLEW}")
  5. $GRADLEW clean assemble --no-daemon -p $PROJECTPATH
  6. # cleanup directory folder
  7. first_apk=$(find . -type f -name '*.apk' | sed -n '1p')
  8. staticfolder=/var/www/static
  9. version=$(aapt d badging "$first_apk" | grep -oP '(?<=versionName=).*' | awk '{print $1}' | tr -d "'");
  10. sudo rm -rf "${staticfolder}"/4/master/"${version}"
  11.  
  12. get_variant_data() {
  13. find . -type f -name '*.apk' | while read -r apk; do
  14. staticfolder=/var/www/static
  15. applicationname=$(aapt d badging "$apk" | grep -oP '(?<=application-label-en-AU:).*' | tr -d "'");
  16. bundleID=$(aapt d badging "$apk" | grep -oP '(?<=package: name=).*' | awk '{print $1}' | tr -d "'");
  17. version=$(aapt d badging "$apk" | grep -oP '(?<=versionName=).*' | awk '{print $1}' | tr -d "'");
  18. icon=$(find . -name "ic_launcher.png" | grep "mipmap-xxxhdpi");
  19. type_dir=$(dirname "${apk}");
  20. flavor_dir=$(dirname "${type_dir}");
  21. type=$(echo ${type_dir##*/} | awk '{print toupper(substr($0,0,1))substr($0,2)}');
  22. flavor=$(echo ${flavor_dir##*/} | awk '{print toupper(substr($0,0,1))substr($0,2)}');
  23. if [ $flavor = "Apk" ];
  24. then
  25. variantvalue="$type";
  26. else
  27. variantvalue="$type""$flavor";
  28. fi
  29. #FORMAT {static folder}/{ application id }/{ branch name }/{version}/variant;
  30. directory="${staticfolder}"/4/master/"${version}"/"${variantvalue}"
  31. sudo mkdir -p $directory
  32. sudo mkdir -p "$directory"/ic
  33. # copy over icon
  34. sudo cp "$icon" "$directory"/ic/ic_launcher.png
  35. # copy over apk with name (appname)-(version).apk
  36. sudo cp $apk "$directory"/"$applicationname"-"${version}".apk
  37. # setup data to be sent to application server
  38. variantFTP=/static/4/master/"${version}"/"${variantvalue}"/"$applicationname"-"${version}".apk;
  39. variantIcon=/static/4/master/"${version}"/"${variantvalue}"/ic/ic_launcher.png;
  40. echo \
  41. {\
  42. \"VariantValue\": \""$variantvalue"\",\
  43. \"VariantDisplayName\": \""$applicationname"\",\
  44. \"VariantBundleId\": \""$bundleID"\",\
  45. \"VariantFtpFolder\": \""$variantFTP"\",\
  46. \"VariantIconUrl\": \""$variantIcon"\"\
  47. },
  48. done
  49. };
  50. variantdata=$(get_variant_data);
  51. variantdata=${variantdata%?};
  52. variantdata=["$variantdata"];
  53. # setup additional data to be sent to application server
  54. applicationFTP=/static/4;
  55. branchFTP=/static/4/master;
  56. versionFTP=/static/4/master/"${version}";
  57. curl -X POST "http://localhost:5002/api/jenkins/build" -H "Content-Type:application/json" -d \
  58. "{\"OwnerID\": 1,\"ProjectID\": 4,\"ApplicationID\": 4,\"ApplicationFtpFolder\":\"${applicationFTP}\",\"BranchID\": 8,\"BranchFtpFolder\":\"${branchFTP}\",\"VersionValue\":\"${version}\",\"VersionFtpFolder\":\"${versionFTP}\",\"BranchBuildSuccess\":true,\"JenkinsVariantDTOs\":${variantdata}}"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement