JSON ಗೆ YAML ಪರಿವರ್ತಕ
JSON ರಚನೆಯನ್ನು ಶುದ್ಧ YAML ಸ್ವರೂಪಕ್ಕೆ ಪರಿವರ್ತಿಸಿ. ಕುಬರ್ನೆಟ್ಸ್ ಮ್ಯಾನಿಫೆಸ್ಟ್ಗಳು ಮತ್ತು ಕ್ಲೌಡ್ ಕಾನ್ಫಿಗರ್ಗಳಿಗೆ ಸೂಕ್ತವಾಗಿದೆ.
JSON ರಚನೆಯನ್ನು ಶುದ್ಧ YAML ಸ್ವರೂಪಕ್ಕೆ ಪರಿವರ್ತಿಸಿ. ಕುಬರ್ನೆಟ್ಸ್ ಮ್ಯಾನಿಫೆಸ್ಟ್ಗಳು ಮತ್ತು ಕ್ಲೌಡ್ ಕಾನ್ಫಿಗರ್ಗಳಿಗೆ ಸೂಕ್ತವಾಗಿದೆ.
JSON ನಿಂದ YAML ಗೆ ಹೋಗುವುದು ಹೆಚ್ಚಾಗಿ ಡೇಟಾವನ್ನು ಮನುಷ್ಯರಿಗೆ ಹೆಚ್ಚು ಓದುವಂತೆ ಮಾಡುವುದು. ಎರಡೂ ಸ್ವರೂಪಗಳು ಒಂದೇ ರೀತಿಯ ರಚನೆಗಳನ್ನು ವಿವರಿಸುತ್ತವೆ - ವಸ್ತುಗಳು/ನಕ್ಷೆಗಳು, ಅರೇಗಳು/ಸೀಕ್ವೆನ್ಸ್ಗಳು, ಸ್ಕೇಲರ್ಗಳು - ಆದರೆ YAML ನ ಇಂಡೆಂಟೇಶನ್-ಆಧಾರಿತ ಸಿಂಟ್ಯಾಕ್ಸ್, ಐಚ್ಛಿಕ ಉಲ್ಲೇಖ ಮತ್ತು ಕಾಮೆಂಟ್ಗಳಿಗೆ ಬೆಂಬಲವು ಕೈಯಿಂದ ಸ್ಕ್ಯಾನ್ ಮಾಡಲು ಮತ್ತು ಸಂಪಾದಿಸಲು ಸುಲಭಗೊಳಿಸುತ್ತದೆ. ಕಾನ್ಫಿಗರೇಶನ್ ಫೈಲ್ಗಳು ಅಂಗೀಕೃತ ಬಳಕೆಯ ಸಂದರ್ಭಗಳಾಗಿವೆ: ಕುಬರ್ನೆಟ್ಸ್ ಮ್ಯಾನಿಫೆಸ್ಟ್ಗಳು, CI ವರ್ಕ್ಫ್ಲೋಗಳು, ಅನ್ಸಿಬಲ್ ಪ್ಲೇಬುಕ್ಗಳು ಮತ್ತು ಹತ್ತಾರು ಇತರ ಪರಿಕರಗಳು ನಿರ್ದಿಷ್ಟವಾಗಿ YAML ಅನ್ನು ಆರಿಸಿಕೊಂಡಿವೆ ಏಕೆಂದರೆ ಅವುಗಳ ಪ್ರಾಥಮಿಕ ಸಂಪಾದಕರು ಮನುಷ್ಯರು.
ಪಾರ್ಸ್ ಮಾಡಿದ JSON ಆಬ್ಜೆಕ್ಟ್ ಅನ್ನು YAML ಗೆ ಧಾರಾವಾಹಿ ಮಾಡಲು ಈ ಪರಿವರ್ತಕ js-yaml ಅನ್ನು ಬಳಸುತ್ತದೆ. YAML ಸಂಪ್ರದಾಯಗಳನ್ನು ಅನ್ವಯಿಸುವಾಗ ಫಲಿತಾಂಶವು ನಿಖರವಾಗಿ ಡೇಟಾದ ರಚನೆಯನ್ನು ಸಂರಕ್ಷಿಸುತ್ತದೆ: ಗೂಡುಕಟ್ಟುವಿಕೆಗಾಗಿ ಇಂಡೆಂಟೇಶನ್, ಅರೇಗಳಿಗೆ ಪಟ್ಟಿಗಳು, ಆಬ್ಜೆಕ್ಟ್ ಗುಣಲಕ್ಷಣಗಳಿಗಾಗಿ ಕೀ-ಮೌಲ್ಯ ಜೋಡಿಗಳು. JSON ನ ಕಟ್ಟುನಿಟ್ಟಾದ ಡಬಲ್-ಕೋಟಿಂಗ್ ಸಡಿಲಗೊಂಡಿದೆ; ವಿಶೇಷ ಅಕ್ಷರಗಳನ್ನು ಹೊಂದಿರುವ ಅಥವಾ ಇತರ ಪ್ರಕಾರಗಳಂತೆ ಕಾಣುವ ಸ್ಟ್ರಿಂಗ್ಗಳನ್ನು ಮಾತ್ರ ಔಟ್ಪುಟ್ನಲ್ಲಿ ಉಲ್ಲೇಖಿಸಲಾಗಿದೆ.
YAML ಅಭಿವ್ಯಕ್ತಿಶೀಲತೆಯನ್ನು ಸೇರಿಸಿದರೆ JSON ಹೊಂದಿರದ ಹೊರತು ಪರಿವರ್ತನೆಯು ಮಾಹಿತಿ-ಸಂರಕ್ಷಿಸುತ್ತದೆ. ಕಾಮೆಂಟ್ಗಳನ್ನು ಮರುನಿರ್ಮಾಣ ಮಾಡಲಾಗುವುದಿಲ್ಲ (JSON ಯಾವುದನ್ನೂ ಹೊಂದಿರಲಿಲ್ಲ). ಆಂಕರ್ ಮತ್ತು ಅಲಿಯಾಸ್ ಉಲ್ಲೇಖಗಳು ಪುನರಾವರ್ತಿತ ರಚನೆಗಳನ್ನು ಸಂಭಾವ್ಯವಾಗಿ ಸಂಕುಚಿತಗೊಳಿಸಬಹುದು ಆದರೆ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಉತ್ಪತ್ತಿಯಾಗುವುದಿಲ್ಲ; ಔಟ್ಪುಟ್ ಎಲ್ಲಾ ಉಲ್ಲೇಖಗಳನ್ನು ಇನ್ಲೈನ್ನಲ್ಲಿ ವಿಸ್ತರಿಸುತ್ತದೆ.
ಮನುಷ್ಯರ ಸಂರಚನೆಯನ್ನು ಸಂಪಾದಿಸಲು JSON ಗಿಂತ YAML ನಾಟಕೀಯವಾಗಿ ಹೆಚ್ಚು ಓದಬಲ್ಲದು. ಇಂಡೆಂಟೇಶನ್ ಬ್ರೇಸ್ ನೆಸ್ಟಿಂಗ್ ಅನ್ನು ಬದಲಾಯಿಸುತ್ತದೆ, ಸರಳ ಸ್ಟ್ರಿಂಗ್ಗಳಿಗೆ ಉಲ್ಲೇಖಗಳು ಐಚ್ಛಿಕವಾಗಿರುತ್ತವೆ ಮತ್ತು ಕಾಮೆಂಟ್ಗಳು ಸ್ಪಷ್ಟವಲ್ಲದ ಸೆಟ್ಟಿಂಗ್ಗಳನ್ನು ದಾಖಲಿಸಬಹುದು. ಮಾನವರು ನಿರ್ವಹಿಸುವ ಫೈಲ್ಗಳಿಗಾಗಿ - ಅಪ್ಲಿಕೇಶನ್ ಕಾನ್ಫಿಗರ್, ಮೂಲಸೌಕರ್ಯ-ಕೋಡ್, ಪೈಪ್ಲೈನ್ಗಳನ್ನು ನಿರ್ಮಿಸುವುದು - YAML ಯಾವಾಗಲೂ ಸರಿಯಾದ ಗಮ್ಯಸ್ಥಾನ ಸ್ವರೂಪವಾಗಿದೆ.
ಆಧುನಿಕ ಮೂಲಸೌಕರ್ಯ ಉಪಕರಣಗಳು ಅಗಾಧವಾಗಿ YAML ಅನ್ನು ಬೆಂಬಲಿಸುತ್ತವೆ. ಕುಬರ್ನೆಟ್ಸ್, ಹೆಲ್ಮ್ ಚಾರ್ಟ್ಗಳು, ಅನ್ಸಿಬಲ್, ಗಿಟ್ಹಬ್ ಆಕ್ಷನ್ಗಳು, ಗಿಟ್ಲ್ಯಾಬ್ ಸಿಐ, ಡಾಕರ್ ಕಂಪೋಸ್ ಮತ್ತು ಇತರ ಹಲವು ಉಪಕರಣಗಳು YAML ಅನ್ನು ಆದ್ಯತೆ ನೀಡುತ್ತವೆ ಅಥವಾ ಅಗತ್ಯವಿರುತ್ತದೆ. JSON ರಫ್ತುಗಳನ್ನು ಒಂದು ಸಿಸ್ಟಮ್ನಿಂದ ಇನ್ನೊಂದಕ್ಕೆ YAML ಸಂರಚನೆಗೆ ಪರಿವರ್ತಿಸುವುದು ವಾಡಿಕೆಯ ಏಕೀಕರಣ ಹಂತವಾಗಿದೆ.
JSON ಅನ್ನು ಅಂಟಿಸಿ, YAML ಪಡೆಯಿರಿ.
js-yaml ನ ಡಂಪ್ ಕಾರ್ಯವು ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಆಬ್ಜೆಕ್ಟ್ ಟ್ರೀ ಅನ್ನು ನಡೆಸುತ್ತದೆ ಮತ್ತು ಕಾನ್ಫಿಗರ್ ಮಾಡಬಹುದಾದ ಫಾರ್ಮ್ಯಾಟಿಂಗ್ ಅನ್ನು ಬಳಸಿಕೊಂಡು YAML ಅನ್ನು ಹೊರಸೂಸುತ್ತದೆ. ಇಂಡೆಂಟ್ ಡೆಪ್ತ್, ಲೈನ್ ಅಗಲ, ಫ್ಲೋ ಸ್ಟೈಲ್ ಥ್ರೆಶೋಲ್ಡ್ ಮತ್ತು ಕೋಟ್ ಹ್ಯಾಂಡ್ಲಿಂಗ್ ಎಲ್ಲಾ ನಿಯತಾಂಕಗಳಾಗಿವೆ. ಡೀಫಾಲ್ಟ್ ಸೆಟ್ಟಿಂಗ್ಗಳು 2-ಸ್ಪೇಸ್ ಇಂಡೆಂಟೇಶನ್ನೊಂದಿಗೆ ಬ್ಲಾಕ್-ಶೈಲಿಯ YAML ಅನ್ನು ಉತ್ಪಾದಿಸುತ್ತವೆ, ಇದು ಸಾಮಾನ್ಯ ಸಮಾವೇಶವಾಗಿದೆ.
ಸ್ಟ್ರಿಂಗ್ ಉಲ್ಲೇಖವು YAML ನ ನಿಯಮಗಳನ್ನು ಅನುಸರಿಸುತ್ತದೆ: ಇತರ ಪ್ರಕಾರಗಳಂತೆ ಕಾಣುವ ತಂತಿಗಳನ್ನು (ಸಂಖ್ಯೆಗಳು, ಬೂಲಿಯನ್ಗಳು, ಶೂನ್ಯ, ದಿನಾಂಕಗಳು) ಸ್ಟ್ರಿಂಗ್ ವ್ಯಾಖ್ಯಾನವನ್ನು ಒತ್ತಾಯಿಸಲು ಉಲ್ಲೇಖಿಸಲಾಗಿದೆ; ವಿಶೇಷ ಅಕ್ಷರಗಳನ್ನು ಹೊಂದಿರುವ ತಂತಿಗಳನ್ನು (ಕೊಲೊನ್ಗಳು, ಹ್ಯಾಶ್ಗಳು, ಪ್ರಮುಖ ಡ್ಯಾಶ್ಗಳು) ಉಲ್ಲೇಖಿಸಲಾಗಿದೆ; ಸರಳ ವರ್ಣಮಾಲೆಯ ತಂತಿಗಳನ್ನು ಉಲ್ಲೇಖಿಸದೆ ಬಿಡಲಾಗಿದೆ.
ಔಟ್ಪುಟ್ YAML 1.2 ಹೊಂದಾಣಿಕೆಯಾಗಿದೆ ಮತ್ತು js-yaml, PyYAML ಮತ್ತು ಇತರ ಪ್ರಮುಖ YAML ಲೈಬ್ರರಿಗಳೊಂದಿಗೆ ಸ್ವಚ್ಛವಾಗಿ ಪಾರ್ಸ್ ಮಾಡುತ್ತದೆ. Idempotent ರೌಂಡ್-ಟ್ರಿಪ್ಗಳು (JSON → YAML → JSON) ಡೇಟಾವನ್ನು ಸಂರಕ್ಷಿಸುತ್ತದೆ, ಆದರೂ YAML ಪ್ರಾತಿನಿಧ್ಯವು ಕೈಯಿಂದ ಬರೆಯಲ್ಪಟ್ಟ ಸಮಾನತೆಯಿಂದ ಭಿನ್ನವಾಗಿರಬಹುದಾದ ಅಂಗೀಕೃತ ಫಾರ್ಮ್ಯಾಟಿಂಗ್ ಅನ್ನು ಆಯ್ಕೆ ಮಾಡುತ್ತದೆ.