According to sources, cops first noticed Garrett shaking and sweating profusely at an L.A. Metrolink station -- when they asked him if they could perform a search of his person.
We're told cops asked Garrett if he had any drugs on him -- at first, Garrett told them he didn't ... but then later admitted he was packing heroin in his shoe.
Cops seized the drugs and arrested Garrett on the spot -- before transporting him to a nearby jail where he stayed behind bars until Wednesday morning.
Garrett was eventually released after posting $10,000 bail.
He is due back in court on February 24.