Das Problem ist, dass Du in Wirklichkeit keine einzige Zeile mit `X`-Spalten mehr hast. Deshalb funktioniert Dein Beispiel auch schon ohne `longtable` und `ltxtable` mit einer einfachen `tabularx` nicht. Deshalb wird die Breite der Tabelle auch nicht auf die angegebene Breite `\linewidth` gedehnt.
Glücklicherweise bietet das `longtable`-Paket eine Möglichkeit, eine Tabellenzeile quasi als Muster zu definieren, indem man ihr ein `\kill` anhängt. Diese Musterzeile wird bei der Ermittlung der Spaltenbreiten mit berücksichtigt, aber nie ausgegeben:
\documentclass[11pt,twoside]{scrbook}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{array}
\usepackage[table]{xcolor}
\usepackage{tabularx}
\usepackage{longtable}
\usepackage{ltxtable}
\usepackage{filecontents}
\begin{document}
\begin{filecontents}{table-openshift-matrix.auto}
\begin{longtable}{l*{6}{X}}
Framework & 1 & 2 & 3 & 4 & 5 & 6 \\\kill
\textbf{Framework} & \multicolumn{6}{l}{\centering\textbf{Versionen}}\\
\hline
Node.js & \multicolumn{2}{l}{\cellcolor{green}0.10} &
\multicolumn{2}{l}{\cellcolor{orange}X} &
\multicolumn{2}{l}{\cellcolor{blue}X}\\
\hline
Perl & \multicolumn{3}{l}{\cellcolor{green}5.16} &
\multicolumn{3}{l}{\cellcolor{blue}X}\\
\hline
\end{longtable}
\end{filecontents}
\LTXtable{\linewidth}{table-openshift-matrix.auto}
\end{document}
Damit kann dann `tabularx` die Breite der `\multicolumn`-Spalten entsprechend der für die angegebene Anzahl an `X`-Spalten ermittelte Breite einstellen.einstellen.
![alt text][1]
[1]: http://texwelt.de/wissen/upfiles/test_250.png