Veraltet – Tipps zur Produktionsbereitstellung
Wenn Sie Anpassungen an Anwendungen auf entwickeln ServiceNow®Plattform, stellen Sie sie über das Anwendungs-Repository in einer Produktionsinstanz bereit. In diesem Thema werden die Kompromisse zwischen der Installation einer Anwendung aus dem Anwendungs-Repository und dem Git-Repository mit Quellcodeverwaltung untersucht und mit Vorsicht behandelt.
Versuchen Sie, Apps in der aktuellen Version von zu erstellen und zu bearbeiten ServiceNow StudioStattdessen. Weitere Informationen finden Sie unter ServiceNow Studio.
Übersicht oder Bereitstellung in der Produktion
Technisch gesehen können Sie eine Anwendung weiterhin über die Quellcodeverwaltung aus einem Git-Repository in einer Produktionsinstanz „bereitstellen“. Dies kann unbeabsichtigte Konsequenzen haben.
Glossar der Begriffe
| Termin | Definition |
|---|---|
| Metadaten oder Anwendungsdateien | Die sys_metadata-Datensätze, die die Konfiguration in definieren ServiceNowUnd sind in einer Anwendung verpackt. Diese Datensätze ändern das Verhalten der Instanz, enthalten jedoch keine Daten wie Incident- oder CMDB-Datensätze. (Siehe Hinweis unten) |
| Bereichsbezogene Anwendungen | ServiceNow-Anwendungen, die einschränken, dass nur Updates und Vorgänge innerhalb der Grenze des Umfangs zulässig sind. Dieser Mechanismus wird für die meisten Neuentwicklungen verwendet. |
| Globale Anwendungen | Globale Anwendungen werden im veralteten globalen Bereich entwickelt. In diesem Bereich wird häufig Arbeit geleistet, um vorhandene ServiceNow-Anwendungen wie IT Servicemanagement (ITSM) anzupassen. |
| Anwendungs-Repository | Anwendungen werden normalerweise hier zur Bereitstellung in Produktionsinstanzen veröffentlicht. Obwohl das Anwendungs-Repository über separate Berechtigungsregeln verfügt, funktioniert es ähnlich wie der ServiceNow Store. |
| ServiceNow Store | Repository für Anwendungen von Drittparteien (Lieferanten) sowie von ServiceNow veröffentlichte Anwendungen. Die meisten Kunden veröffentlichen nicht im Store, installieren jedoch häufig Anwendungen davon. |
| Update Sets | Standardmethode zum Paketieren von Anpassungen für die Bereitstellung in jeder nachfolgenden Instanz. Sie enthalten die inkrementelle Sammlung von Einfügungen, Updates und Löschungen. |
| Veraltet – Delta wird geladen | Die effizienteste Methode zum Laden, da sie sich nur von der Quellcodeverwaltung und nicht von früheren Deinstallations-/Neuinstallationsmethoden ändert. |
| Schema | Definition von Tabellen und Spalten in den Tabellen. |
| Rollback | Administratoren können ein Rollback für die letzte Installation einer ausgewählten Anwendung durchführen. Ein Rollback entfernt alle Code-, Tabellen- und Dateiupdates aus der Erstinstallation. |
Installationsort
Wenn Sie die Quellcodeverwaltung installieren, wird die laufende Entwicklung einer anwenderdefinierten Anwendung erleichtert. Daher wird die Anwendung als Anwendung „in Entwicklung“ in der Tabelle „Anwenderdefinierte Anwendung“ [sys_App] und nicht als „installierte“ Anwendung in der Tabelle „Store-Anwendung“ [sys_Store_App] verwaltet. Beide Tabellen sind Erweiterungen von sys_scope, sodass beide dieselben Schutzmaßnahmen und Einschränkungen wie der Umfang bieten. Wenn Sie also nach der Installation einer bereitgestellten Quellcodeanwendung suchen, finden Sie in der Tabelle „Systemanwendung [sys_App]“ und in In Entwicklung Abschnitt der Seite „Anwendungsmanager“.Sie können keinen sys_App-Datensatz in der Instanz haben, während Sie dieselbe Anwendung aus dem ServiceNow Store oder Anwendungs-Repository bereitstellen. Die beiden Bereitstellungsmodelle schließen sich gegenseitig aus. Wenn sich das Bereitstellungsmodell an irgendeinem Punkt ändert, muss der sys_App-Datensatz zuerst in einen sys_Store_App-Datensatz konvertiert werden. Wenden Sie sich an den ServiceNow-Support, um Hilfe bei der Ausführung dieses Vorgangs zu erhalten.
Delta wird geladen
Vor ServiceNowParis-Release, Anwendungsinstallation aus der Quellcodeverwaltung wurde bei Auslösung immer die gesamte Anwendung entfernt und neu installiert, einschließlich der Funktion „Remoteänderungen anwenden“. Mit Veraltet – Delta wird geladen, Jetzt werden nur die Änderungen aktualisiert, was den Prozess erheblich vereinfacht.
| Anwendungstyp | Installationsquelle | Schema im Paket vorhanden | Schema enthält Daten | Anspruch durch andere App (global) | Erwartetes Ergebnis für Daten und Schema |
|---|---|---|---|---|---|
| Mit Umfang | Anwendungs-Repository oder -Speicher | Ja | Ja/Nein | N/V | Beibehalten |
| Mit Umfang | Anwendungs-Repository oder -Speicher | Nein | Ja/Nein | N/V | Beibehalten |
| Mit Umfang | Quellcodeverwaltung | Ja | Ja/Nein | N/V | Beibehalten |
| Mit Umfang | Quellcodeverwaltung | Nein | Ja/Nein | N/V | Entfernt |
| Global | Quellsteuerung, Anwendungs-Repository oder Speicher | Ja | Ja/Nein | Ja/Nein | Beibehalten |
| Nein | Ja | Nein | Beibehalten (1) | ||
| Nein | Nein | Ja | Beibehalten (2) | ||
| Quellcodeverwaltung | Nein | Nein | Nein | Entfernt (3) | |
| Anwendungs-Repository | Nein | Nein | Nein | Beibehalten |
- Während das Datenbankschema und die Daten beibehalten werden, werden sie in die globale Standardanwendung verschoben.
- Während das Datenbankschema und die Daten beibehalten werden, werden sie in die globale Anwendung verschoben, die zuvor Anspruch auf diese Dateien enthielt, falls installiert. Andernfalls werden sie in die globale Standardanwendung verschoben.
- Gilt nur für anwenderdefinierte Spalten mit Präfix u_ . Von der ServiceNow-Plattform erstellte Spalten werden nicht verworfen.
Gehen Sie beim Wechseln von Verzweigungen in der Quellcodeverwaltung für eine bereichsbezogene Anwendung in einer Produktionsumgebung äußerst vorsichtig vor. Wenn in der Zielverzweigung keine Schemaelemente vorhanden sind, die in der aktuellen Verzweigung gefunden wurden, wird das zugehörige Schema verworfen, und alle darin enthaltenen Daten werden gelöscht. (Globale Anwendungen löschen Schema nicht, wenn Daten vorhanden sind.)
Genau wie bei Update-Sätzen muss beim Laden von Delta nur eine Teilmenge der inkrementellen Änderungen angewendet werden. Im Gegensatz zu Update-Sätzen stellt das Anwendungspaket die vollständige Anwendung dar. Dateien, die nicht im neuen Paket vorhanden sind, werden gelöscht. Dies kann die Funktionalität ändern und Daten löschen. Update-Sätze und Anwendungen aus dem Anwendungs-Repository oder aktualisiert ServiceNowStore muss explizit enthalten LÖSCHEN Nutzlast zum Entfernen einer Datei oder zum Verwerfen eines Schemas.
Direkte Bearbeitungen am Repository, insbesondere zum Entfernen von Dateien, können erhebliche Auswirkungen haben, einschließlich Datenverlust und kaskadierender Löschungen. Führen Sie diese Aktion vorsichtig aus.