homebysix / recipe-robot

A kick ass tool for creating AutoPkg recipes.
Apache License 2.0
300 stars 28 forks source link

Created JSS recipe breaks if no PKG recipe #147

Closed SmithersJr closed 10 months ago

SmithersJr commented 5 years ago

Describe the bug If the created .download recipe results in a .pkg file, then a .pkg recipe isn't created. That's fine; however, the .jss recipe that is subsequently created is still referencing the .pkg recipe as its parent. Manually changing that parent recipe to the .download recipe seems to work as expected.

To Reproduce Steps to reproduce the behavior:

  1. Select .download, .pkg, and .jss recipes in preferences.
  2. Enter https://dist.scaleft.com/client-tools/mac/latest/ScaleFT.pkg in the "Feed Me" URL field.
  3. Click on 'Do it!'
  4. Note the log message about "skipping pkg recipe."
  5. Note the parent recipe in the .jss recipe is com.github.smithersjr.pkg.ScaleFT

Expected behavior If the .pkg recipe is skipped because the downloaded file is already a .pkg, then the subsequent .jss file should reference the .download recipe as its parent instead of the non-existent .pkg recipe.

Screenshots N.A.

Desktop (please complete the following information):

Additional context After trying for years, I finally got Recipe Robot to create a recipe for me!!!

homebysix commented 10 months ago

Recipe Robot no longer supports creation of JSS recipes, but as of 2.3.0 can create JamfUploader style recipes, even if the download format is a PKG.

% recipe-robot --verbose --ignore-existing "https://dist.scaleft.com/client-tools/mac/latest/ScaleFT.pkg"
[WARNING] Will build recipes even if they already exist in "autopkg search" results. Please don't upload duplicate recipes to public AutoPkg repos on GitHub.

                      -----------------------------------
                     |  Welcome to Recipe Robot v2.3.1.  |
                      -----------------------------------
                                \   _[]_
                                 \  [oo]
                                   d-||-b
                                     ||
                                   _/  \_

Processing: https://dist.scaleft.com/client-tools/mac/latest/ScaleFT.pkg
Input path looks like a download URL.
    Download URL is: https://dist.scaleft.com/client-tools/mac/latest/ScaleFT.pkg
Downloading file for further inspection...
    Download content-type is application/octet-stream
################################################################################################################# 100.0%
    Downloaded to ~/Library/Caches/Recipe Robot/2023-10-21_20-11-30_190632/ScaleFT.pkg
Determining download format...
    File extension is pkg
Checking whether package is signed...
    Package is signed
Getting developer from pkg signature...
    Developer is: Okta, Inc.
Getting package signature authority names...
    3 authority names recorded
Expanding package to look for clues...
    Package expanded to: ~/Library/Caches/Recipe Robot/2023-10-21_20-11-30_190632/expanded
Trying to get bundle identifier from PackageInfo file...
    Bundle identifier (tentative): com.scaleft.ScaleFT
    Added blocking application: ScaleFT.app
    Added blocking application: Updater.app
[WARNING] Multiple apps found in payload. I'll do my best to figure out which one to use.
    Using app: ScaleFT.app
    In container package: ScaleFTApp.pkg
Validating app...
    This app seems valid
Getting bundle name...
    Bundle name is: ScaleFT
Getting bundle identifier...
    Bundle identifier is: com.scaleft.ScaleFT
Checking for a Sparkle feed...
    No Sparkle feed
Looking for version key...
    Version key is: CFBundleShortVersionString (1.67.4)
Looking for icon...
    Icon is: ~/Library/Caches/Recipe Robot/2023-10-21_20-11-30_190632/payload0/Applications/ScaleFT.app/Contents/Resources/AppIcon
Getting description...
    Description (from Download.com): Modify the size of your digital images.
Generating download recipe...
    ~/Library/AutoPkg/RecipeRobotTestOutput/Okta/ScaleFT.download.recipe
Generating pkg recipe...
    ~/Library/AutoPkg/RecipeRobotTestOutput/Okta/ScaleFT.pkg.recipe
Generating munki recipe...
    ~/Library/AutoPkg/RecipeRobotTestOutput/Okta/ScaleFT.png
    ~/Library/AutoPkg/RecipeRobotTestOutput/Okta/ScaleFT.munki.recipe
Generating jamf recipe...
[REMINDER] Remember to manually set the category in the jamf recipe. I've set it to "Productivity" by default.
    ~/Library/AutoPkg/RecipeRobotTestOutput/Okta/ScaleFT-pkg-upload.jamf.recipe

You've created 11035 recipes with Recipe Robot. (Yep, it's pretty fun for me too.)