SFDX Error – Can’t Deploy Global Value Set Using SFDX

salesforcedxsalesforcedx-clisfdx-error

I've been trying to deploy one single global value set to a test scratch org as I get comfortable with SFDX but I cannot seem to get it to work.

This is the command I'm using:

sfdx force:source:deploy -u stagingTest -p "./globalValueSets/Time_Zones.globalValueSet"

The error I keep getting is:

Error Time_Zones An object 'Time_Zones' of type GlobalValueSet was named in package.xml, but was not found in zipped directory

If I try and use force:source:push instead I get

Expected file at path: ../../../../globalValueSets\Time_Zones.globalValueSet-meta.xml

This is the content of ./globalValueSets/Time_Zones.globalValueSet (Retrieved with Illuminated Cloud from a Sandbox):

<?xml version="1.0" encoding="UTF-8"?>
<GlobalValueSet xmlns="http://soap.sforce.com/2006/04/metadata">
    <customValue>
        <fullName>ACST</fullName>
        <default>false</default>
        <label>ACST</label>
    </customValue>
    <customValue>
        <fullName>BST</fullName>
        <default>false</default>
        <label>BST</label>
    </customValue>
    <customValue>
        <fullName>CEST</fullName>
        <default>false</default>
        <label>CEST</label>
    </customValue>
    <customValue>
        <fullName>CST</fullName>
        <default>false</default>
        <label>CST</label>
    </customValue>
    <customValue>
        <fullName>EST</fullName>
        <default>false</default>
        <label>EST</label>
    </customValue>
    <customValue>
        <fullName>GMT</fullName>
        <default>false</default>
        <label>GMT</label>
    </customValue>
    <customValue>
        <fullName>Hawaiian</fullName>
        <default>false</default>
        <label>Hawaiian</label>
    </customValue>
    <customValue>
        <fullName>MT</fullName>
        <default>false</default>
        <label>MT</label>
    </customValue>
    <customValue>
        <fullName>PST</fullName>
        <default>false</default>
        <label>PST</label>
    </customValue>
    <masterLabel>Time Zones</masterLabel>
    <sorted>false</sorted>

And here is the entry in my package.xml:

  <types>
    <members>Days_of_the_week</members>
    <members>Default_Set_Letter</members>
    <members>Default_Set_Number</members>
    <members>Default_Set_Type</members>
    <members>Demographic_Type</members>
    <members>Dropped_Trainee_Reason</members>
    <members>Eligibility_Options</members>
    <members>Equipment_Condition</members>
    <members>Equipment_Distributors</members>
    <members>Equipment_Types</members>
    <members>Host_Training_Requirements</members>
    <members>Months_of_Year</members>
    <members>New_Locations_Email_Status</members>
    <members>New_Locations_Sales_Status</members>
    <members>Open_Position_Stages</members>
    <members>Organization_Wide_Emails</members>
    <members>Primary_Churn_Reason_Non_Hosted_Show</members>
    <members>Recruiters</members>
    <members>Refund_Status</members>
    <members>Sales_Bonus_Types</members>
    <members>Secondary_Recruiters</members>
    <members>Show_Services</members>
    <members>Show_Times</members>
    <members>Show_Types</members>
    <members>Time_Zones</members>
    <name>GlobalValueSet</name>
  </types>

I don't know why it's expecting a zipped directory of some sort. Any help would be greatly appreciated

Best Answer

The "zipped directory" thing is just how deployments happen. The contents of whatever directory you set as the path are converted in to a zip file before being uploaded. The system is complaining because it is expecting a file called Time_Zones.globalValueSet-meta.xml. Make sure you're not missing the bit at the end, that's important.