Мне неприятно это говорить, но звучит так, будто вы остановились на лучшем из известных мне подходов. Работа с упаковочной средой Salesforce может стать настоящим кошмаром для работы. Как только ваш управляемый пакет имеет префикс, на самом деле невозможно вернуться к простому пакету без него, если вы не запишите его так, как сделали. Таким образом, вы найдете название пакета в своем коде, которое система добавит для вас.
Я нашел, что лучший способ работать с ним - это сохранить «чистую» версию вашего приложения, которая будет корректно устанавливаться в dev-организацию из Ant. Если у вас есть код в Ant, его можно добавить в «обычный» исходный код. Не похоже, чтобы в Salesforce было создано слишком много крупномасштабных приложений с несколькими членами команды, потому что, насколько я могу судить, не так много поддержки рабочего процесса, который включает контроль исходного кода. Они попытались добавить какой-то тип управления выпуском в конфигурацию dev org, которая сейчас находится в бета-версии, но это не выглядело так хорошо.
Я думаю, что Ant, использующий инструмент миграции Salesforce Force.com, - это, по большей части, путь. Затем, однако, как только вы захотите создать управляемый пакет, вы застряли с замороженной базой кода, с этим префиксом, где вам придется делать релизы пакетов (из бета-версии и т. Д.) Из системы упаковки. сам. Лучший способ - обновить песочницу (жесткий лимит раз в месяц !!), а затем попросить разработчиков вытащить из этой песочницы и развернуть ее в отдельных разработчиках, которые затем можно периодически объединять в «группу разработчиков». развертывание обратно в Песочницу (с помощью Force.com IDE или Ant), затем в Production.
Весь процесс, по сути, является полной катастрофой. Salesforce настолько близка к тому, чтобы иметь сверхмощную платформу, но большую часть времени ощущается как потрясающий спортивный автомобиль без руля.
Что касается статических ресурсов, то их можно автоматизировать относительно простым способом с помощью Eclipse, чтобы вы могли развертывать их отдельно за один шаг. API тоже должен его поддерживать.
Я работал над некоторыми довольно большими базами кода Apex (думаю и надеюсь), и, боюсь, на самом деле не существует очевидного элегантного решения. Вы застрянете со странными комбинациями развертывания с использованием Ant в некоторых случаях, Eclipse других и т. Д.
Исходя из других сред разработки, это часто сбивает с толку и просто странно. Например, вызывает недоумение тот факт, что вы не можете легко вывести базу данных за один шаг, отслеживая отношения между объектами, а затем «импортировать» ее в другую организацию за один шаг. На самом деле нам пришлось написать инструмент, который позволил бы легко извлекать все данные при обходе отношений между объектами, загружать все данные, рекурсивно удалять данные и т. Д. Из файла xls, поскольку нам требовался простой способ тестирования в orgs.
Кстати, dev-организации - это в основном выбрасываемые организации. Мы создаем десятки из них для разных целей тестирования и для сохранения разных версий и конфигураций.
Извините, я не мог дать вам лучшие новости. Здесь может быть больше гуру, который может указать на элегантный способ управления упаковкой, и я буду заинтересован в вас так же, как и в ответе! Вы можете написать мне на Suprasphere --- на --- Gmail, если вы хотите сочувствовать! :)